寫在2017年末尾,翻看文集的第一篇文章已經(jīng)是三個月前的事了,也沒想過這文集會寫那么久,這么慢。。。 Netty文集中的文章主要都是我學(xué)習(xí)過程的筆記,寫博客的主要目的是為了通過輸出來倒逼輸入,本著對文章內(nèi)容負責(zé)的態(tài)度,迫使自己更嚴謹?shù)膶Υ约何闹械挠^點和結(jié)論。通常,這會耗費我不少精力和時間去查閱資料來完善和證明結(jié)論的正確性,這個過程有時候真挺漫長的,但慢慢的發(fā)生這個過程中也建立和完善了自己的知識體系,也不賴。因為我有些個話癆,所以我的文章篇幅好像都不短。。有認真看過通篇的小伙伴,我還是很感謝的??
Netty文集主要由“Netty in action” 、 “Netty 源碼解析”和“Netty那些事兒”三部分組成:
- “Netty in action”:主要是對Norman Maurer and Marvin Allen Wolfthal 的 《Netty in action》一書簡要翻譯,同時對重要點加上一些自己補充和擴展。
- “Netty 源碼解析”:主要針對Netty的一個主要流程展開對Netty底層源碼的分析。
- “Netty那些事兒”:主要結(jié)合在開發(fā)實戰(zhàn)中,我們遇到的一些“奇奇怪怪”的問題,以及如何正確且更好的使用Netty框架,并會對Netty中涉及的重要設(shè)計理念進行介紹。
“Netty in action”作為知識理論,是入口點,在了解一定的理論知識后,開始了“Netty 源碼解析”,以更加深入透徹的了解Netty的底層實現(xiàn)機制,以便我們在開發(fā)中能更好更靈活的使用它。最后,在對Netty有一定深入了解后,就有了“Netty那些事兒”,它主要針對Netty某些功能的實戰(zhàn)以及問題的分析。文集三個部分其實是相互滲透、互補的。因為文章沒有順序標(biāo)號,這里整理下大致文章的順序:
先導(dǎo)篇
關(guān)于 NIO 你不得不知道的一些“地雷”
這篇其實不是Netty文集的中的文章,但是掌握好NIO對Netty的學(xué)習(xí)至關(guān)重要。文章并非通篇對基礎(chǔ)知識點的介紹,而是更深一步的對NIO中大家容易忽略和疑惑的點進行了說明,而這些觀點在我后期查看Netty源碼時也得到了相應(yīng)的驗證。
Netty文集
啟動流程
Netty in action ——— 異步和事件驅(qū)動
Netty in Action ——— Netty的組件和設(shè)計
Netty in action ——— Bootstrapping
Netty in action ——— 事件循環(huán) 和 線程模式
Netty in action ——— 傳輸協(xié)議
Netty in Action ——— ChannelHandler 和 ChannelPipeline
Netty 源碼解析 ——— 服務(wù)端啟動流程 (上)
Netty 源碼解析 ——— 服務(wù)端啟動流程 (下)
Netty 源碼解析 ——— ChannelConfig 和 Attribute非阻塞I/O事件處理
Netty in Action ——— ByteBuf
Netty 源碼解析 ——— AdaptiveRecvByteBufAllocator
Netty 源碼解析 ——— 基于 NIO 網(wǎng)絡(luò)傳輸模式的 OP_ACCEPT、OP_CONNECT、OP_READ、OP_WRITE 事件處理流程線程模式 與事件循環(huán)
Netty 那些事兒 ——— Reactor模式詳解
Netty 源碼解析 ——— NioEventLoop 詳解優(yōu)雅關(guān)閉
Netty 源碼解析 ——— Netty 優(yōu)雅關(guān)閉流程心跳機制 、大數(shù)據(jù)包發(fā)送 以及 流量整形
Netty in Action ——— The codec framework
Netty 源碼解析 ——— writeAndFlush流程分析
Netty 那些事兒 ——— 心跳機制
Netty 那些事兒 ——— 關(guān)于 “Netty 發(fā)送大數(shù)據(jù)包時 觸發(fā)寫空閑超時” 的一些思考
Netty 那些事兒 ——— Netty實現(xiàn)“流量整形”原理分析及實戰(zhàn)
好了,關(guān)于Netty文集暫時告一段落,雖然沒有涉及到Netty的全方面,但是也涵蓋了大部分主要流程了。小結(jié)并不是結(jié)束,如果以后看到有意思的問題或者以后在工作中有機會用到Netty的話,會繼續(xù)做分享,以及對Netty更深一步學(xué)習(xí)。
最后,也非常歡迎大家關(guān)于Netty有任何問題和我一起討論交流:-)