原创 【Redis實戰系列 一】分佈式鎖實戰

最近在公司做的一個功能是這樣的,異步的方式進行導入任務處理也即:客戶機生產消息,將消息通過RabbitMQ服務器分發到部署有消費代碼的服務端機器進行併發處理,這樣做保證了消息的異步處理,但是可能大消息量會對機器有較大的壓力,所以所

原创 【Kafka實戰系列 一】生產者消費者系統實踐

在項目實戰中就會發現,其實不管是微服務也好,DDD也好,都是爲了履行設計原則裏的低耦合、高內聚而無論是RabbitMQ還是Kafka,都是通過消息隊列的方式對系統進行解耦,在從入門到放棄系列裏我詳細介紹過其使用背景以及模型等,由於

原创 《圍城》十年

《圍城》是我最喜歡的小說,沒有之一,自中學時讀第一遍始到如今十餘年的時間內,已反覆咀嚼數遍。還看了由陳道明主演的十集電視劇,最近又從微信讀書上聽書聽了兩遍,書中鴻漸、辛楣等人所歷人生可謂清清楚楚,劇情走向瞭如指掌,甚至於臺詞字句也

原创 【C#本質論 八】類-從設計的角度去認知(多態)

其實稱本篇爲多態還是有些牽強,因爲在類的繼承中也是存在多態的,例如我們的重寫機制,但可以設想這樣一個場景:飛行這個動作,鳥可以飛行,飛機可以飛行,而飛機其實和鳥沒有父子關係的,他們共同擁有的是行爲:飛行。所以本篇博客着重介紹這一點

原创 【C#本質論 十二】異常處理

年前最後一篇技術博客了,由於近期的上線,自學進度嚴重滯後,年後還是得拾起來啊,閒言少敘,書歸正傳,經過艱苦的學習奮鬥,終於來到了中級部分知識的最後一篇內容《異常處理》,其實之前學習Java的時候就瞭解過,在本質論系列的第五章也瞭解

原创 【C#本質論 五】方法和參數

前面四篇博客主要介紹了一些基本的操作內容,包含之前不瞭解的冷知識,以及一些新學到的C#較新版本的新知識,做個簡單的小結: 新知識:元組、tryParse(out可內聯)、字符串插值、空合併操作符、空條件操作符、可空修飾符、swi

原创 【C#本質論 六】類-從設計的角度去認知(封裝)

從這一章開始,基本就脫離了結構化編程的思維,所以我的博客排版方式也會摒棄之前的節選方式,而是深入的去理解和描述內容,而這本書給我帶來的驚喜就是:能夠從設計的角度去幫助我理解爲何類要如此設計,其設計緣由是什麼,我覺得這一點遠比單純的

原创 【C#本質論 四】操作符和控制流程

本篇博客延續前三篇的寫作方式,因爲內容較爲基礎,只是以冷熱知識的形式列出舊有的容易忽視的C#特性及新出現的特性,當然對一些之前較爲模糊的概念也予以整理。 概念重現 1,操作符的概念,操作符分爲一元、二元、三元三大類,分別對應一、二

原创 【C#編程最佳實踐 二十】如何發送帶有重試機制的Http請求

最近在做的一個功能是通過ESB調用http的client來發送Http請求,學習了相關的調用方式,如何讓請求帶有重試機制的發送呢? HttpClient初始化 在整個調用過程中,我們使用到了委託方法的方式,在外層的委託里加入了重試

原创 【C#本質論 九】值類型-結構之力

研一的時候學習C#,發現和自己學的Java不一樣,爲啥,C#裏還有結構體這個東西,這個東西不多餘麼?今天學習了下結構體,發現,這東西確實挺多餘的,沒啥用,但是通過對結構體的學習,可以讓我更好的理解值類型,C# 中的簡單類型,如in

原创 你的名字

看這部電影前,第一次聽說新海誠的名字,因爲平時日漫看的太少,但是《你的名字》之後,感覺要入坑啦,這是第一部在電影院看的日本漫畫電影,也是第一次想認認真真寫一篇影評的電影。 電影開場的一段臺詞就令我震撼,感同身受的樣子:清晨 醒來

原创 1587---雪後的大明

距離1566年的那場大雪已經21年了,這個風雨飄搖的王朝將走向何方似乎已成定數…

原创 【C#編程最佳實踐 十九】DotTrace性能調優最佳實踐

最近測試報了一個問題:頁面加載慢,代碼慢怎麼辦,代碼慢在了哪裏呢?於是決定使用DotTrace來進行性能分析,簡直打開了通往新世界的大門,玩兒起來太爽了。接下來我用這篇實踐來手把手教大家怎麼玩兒DotTrace. DotTrac

原创 【解決方案 十六】關鍵字 'with' 附近有語法錯誤

這個事兒的背景吧就是因爲加鎖查詢速度太慢,於是讓咱優化,至少先通過使用with(nolock)來解決查詢慢的問題,這麼個事兒說來也簡單對伐,但是影響範圍特別大,因爲要優化的這個存儲過程是個動態存儲過程,有70多個操作行爲DAO調用

原创 【C#本質論 一】C#概述

從今天開始,學習《C# 本質論7.0》這本書,究其本質!當然已經瞭解過面向對象思想和有一定Java和C#編程基礎,所以無需全盤細節整理,在學習記錄的過程中對於簡單的前幾章學習內容準備採用QA和記錄重點提煉的方式記錄,也就是對於重點