原创 由Netty引出對協議的思考

協議到底是什麼? 之前我們接觸過很多協議,最熟悉莫過於HTTP、TCP、DUBBO 那麼到底是什麼是協議,又和Netty、TCP、SOCKET有何關係? 協議:兩端約定好的一種字節數組結構, 應用層協議:例如前8個字節表示消息類型 後

原创 Netty引導類(Bootstrap類的解析)

Bootstrap 引導類 前面講解了Netty整體架構以及類之間的關係,然後下面就先從框架的入口引導類(就是一個幫助類,存放了一些框架啓動時必要的屬性,例如ChannelFactory、ChannelPipeline、Map<Str

原创 Netty架構分析

Netty架構解析 Netty中Reactor模式 前面分析了Reactor模式,下面來詳細介紹Netty通過哪些類組件、怎樣的類之間關係來實現Reactor模式的。 下面爲netty中涉及到的類,以及類與類之間的關係,下面會將各個類

原创 Reactor模式解析

前言 即將結束的2018年,準備迎接全新的2019年,在此祝大家新年快樂、工作事事順心、更上一層樓。在2018年裏,去了想去的城市,找到了一份心儀的工作,堅持做自己想做的事情。在這裏想真誠的和自己說:在2018年裏,你已經做的很好了,

原创 設計模式之責任鏈模式

責任鏈模式 概念 類圖 代碼實例 概念 例如不同層級的領導,審批權限不一樣,不同的請假請求會流向不同的管理層,如果使用傳統的方式 if else實現,這樣在類中寫很多邏輯,不易維護,違反了單一職責,當增加新的層級管理層進而導致修改

原创 設計模式之命令模式

命令模式 概念 類圖 代碼實例 概念 將一個請求(命令)封裝成一個對象,從而具有不同請求(命令)供客戶度選擇,對請求排隊、記錄以及支持可重做和撤銷操作 好處: 1、能很容易設計一個命令隊列 2、很容易記錄每個命令的日誌 3、可以實

原创 設計模式之橋接模式

類與類之間的橋樑(橋接模式) 概念 類圖 代碼實例 概念 將抽象部分和實現部分分離出來,使它們可以獨立變化。這裏抽象部分和實現部分通俗意思是指,當一個軟件系統中可以多個角度進行分類時,每一種分類都會發生改變,那麼把這種角度分離出來

原创 https雙向加密認證

一、背景&概念 HTTPS:在http(超文本傳輸協議)基礎上提出的一種安全的http協議,因此可以稱爲安全的超文本傳輸協議。 http協議直接放置在TCP協議之上,而https提出在http和TCP中間加上一層加密層。從發送端

原创 設計模式之迭代器模式

迭代器模式 概念 使用場景 類圖 代碼實例 概念 屏蔽了具體集合、數組、列表的遍歷方式和具體遍歷的對象, 是一種獲取集合中元素的一種方式。 提供一個抽象迭代接口,裏面有 hashNext() 是否有下一個元素, next()下一個

原创 設計模式之單例模式

類的計劃生育(單例模式) 概念 類圖 代碼實例 概念 允許類產生僅且只有一個對象,如何在多線程環境下實現這一功能應該是這個類來控制的,所以需要實現產生單個實例關鍵點有以下幾點 1、構造器設置爲private 2、有一個包含本來的字

原创 設計模式之組合模式

分公司=一個部門 概念 類圖 代碼實例 概念 分公司=一個部分 把分公司看成一個部門,而分公司又可以有其他分公司和部門 …,這裏介紹一種適合這種場景的設計模式那就是組合模式。 組合模式:將對象組合成樹形結構以表示 部分-整體的層

原创 設計模式之備忘錄模式

從頭再來(備忘錄) 概念 備忘錄模式實現的三種方式 類圖 代碼實例 概念 備份對象狀態,以便恢復到上一個狀態。 通俗來說就是在對象(Originator發起人)執行某個動作之前先將狀態(屬性值)拷貝一份到一個備忘錄(Mement

原创 設計模式之狀態模式

替換繁瑣if else和多狀態轉換 概念 使用場景 類圖 代碼實例 概念 一個對象中存在多種狀態,並且不同的狀態下對象有不同的行爲操作,傳統的實現方式就是if else 分支條件就是不同的狀態,分支內容就是對應狀態下的操作。 如

原创 設計模式之適配器模式

複用已有代碼來完成現有功能 概念 使用場景 類圖 代碼實例 概念 適配器: 我們國家使用的電腦和手機充電必須在220V電壓進行的,但是有些國家例如泰國的電壓就達不到220V這個時候我們就需要使用電源適配器進行將低電壓轉換成高電壓

原创 開發經驗總結Mark1

開發經驗Summary experience1: 由於做的APP是國際版的軟件,需要支持跨時區問題(也就美國發送一條信息給中國用戶,中國用戶顯示的時間爲中國當地時區對應時間),將接口中傳入和返回的時間參數統一定義爲long 類型(不能