Netty源碼剖析與應用書

Netty涉及多線程技術堵漱、復雜數(shù)據(jù)結(jié)構與內(nèi)存管理模型,它運用了各種設計模式及一些TCP的底層技術辞州。本書對這些難點一一進行攻破怔锌,讓讀者能快速掌握相關知識。

《Netty源碼剖析與應用》包含大量的分布式底層架構的編寫变过,涉及多線程、負載均衡算法涝涤、性能調(diào)優(yōu)媚狰、線上問題緊急處理等內(nèi)容。本書通過非常簡易的代碼來講解Netty在企業(yè)中的實際用法阔拳,通過對實例進行調(diào)試的方式對Netty源碼進行了詳細的剖析崭孤,力圖使讀者通過實際操作快速入門,并深入了解Netty底層的各個組件糊肠。

本書適合有一定Java基礎的架構師辨宠、設計師、開發(fā)工程師货裹、測試工程師嗤形,以及對Java NIO框架、Netty感興趣的相關人士閱讀弧圆。

作者簡介 · · · · · ·

劉耀林赋兵,從2012年到2017年一直從事Java后臺服務開發(fā)工作笔咽。在此期間曾創(chuàng)辦過大象在線分享網(wǎng),網(wǎng)名夜行俠老師霹期,錄制過Netty源碼剖析教學視頻叶组,同時在多家互聯(lián)網(wǎng)公司擔任過系統(tǒng)架構師,有豐富的Java工作實戰(zhàn)經(jīng)驗历造。從2018年至今甩十,從事大數(shù)據(jù)研發(fā)工作,對Flink吭产、HBase侣监、Kafka、Elasticsearch等大數(shù)據(jù)組件有深入的研究垮刹。

目錄 · · · · · ·

第1章 Netty基礎篇1

1.1 Netty概述1

1.2 Netty服務端構建2

1.3 Netty客戶端的運用6

1.3.1 Java多線程交互6

1.3.2 Netty客戶端與服務端短連接12

1.3.3 Netty客戶端與服務端長連接18

1.4 小結(jié)22

第2章 原理部分23

2.1 多路復用器23

2.1.1 NIO與BIO的區(qū)別24

2.1.2 epoll模型與select模型的區(qū)別25

2.2 Netty線程模型27

2.3 編碼和解碼28

2.4 序列化30

2.4.1 Protobuf序列化30

2.4.2 Kryo序列化31

2.5 零拷貝33

2.6 背壓34

2.6.1 TCP窗口34

2.6.2 Flink實時計算引擎的背壓原理36

2.7 小結(jié)39

第3章 分布式RPC40

3.1 Netty整合Spring41

3.2 采用Netty實現(xiàn)一套RPC框架43

3.3 分布式RPC的構建52

3.3.1 服務注冊與發(fā)現(xiàn)53

3.3.2 動態(tài)代理68

第4章 Netty核心組件源碼剖析81

4.1 NioEventLoopGroup源碼剖析82

4.2 NioEventLoop源碼剖析86

4.2.1 NioEventLoop開啟Selector87

4.2.2 NioEventLoop的run()方法解讀89

4.2.3 NioEventLoop 重新構建Selector和Channel的注冊98

4.3 Channel源碼剖析100

4.3.1 AbstractChannel源碼剖析101

4.3.2 AbstractNioChannel源碼剖析102

4.3.3 AbstractNioByteChannel源碼剖析107

4.3.4 AbstractNioMessageChannel源碼剖析112

4.3.5 NioSocketChannel源碼剖析116

4.3.6 NioServerSocketChannel源碼剖析119

4.4 Netty緩沖區(qū)ByteBuf源碼剖析120

4.4.1 AbstractByteBuf源碼剖析122

4.4.2 AbstractReferenceCountedByteBuf源碼剖析127

4.4.3 ReferenceCountUpdater源碼剖析129

4.4.4 CompositeByteBuf源碼剖析134

4.4.5 PooledByteBuf源碼剖析145

4.5 Netty內(nèi)存泄漏檢測機制源碼剖析151

4.5.1 內(nèi)存泄漏檢測原理152

4.5.2 內(nèi)存泄漏器ResourceLeakDetector源碼剖析153

4.6 小結(jié)164

第5章 Netty讀/寫請求源碼剖析165

5.1 ServerBootstrap啟動過程剖析165

5.2 Netty對I/O就緒事件的處理172

5.2.1 NioEventLoop就緒處理之OP_ACCEPT172

5.2.2 NioEventLoop就緒處理之OP_READ(一)175

5.2.3 NioEventLoop就緒處理之OP_READ(二)182

第6章 Netty內(nèi)存管理195

6.1 Netty內(nèi)存管理策略介紹195

6.2 PoolChunk內(nèi)存分配197

6.2.1 PoolChunk分配大于或等于8KB的內(nèi)存197

6.2.2 PoolChunk分配小于8KB的內(nèi)存201

6.3 PoolSubpage內(nèi)存分配與釋放205

6.4 PoolArena內(nèi)存管理214

6.5 RecvByteBufAllocator內(nèi)存分配計算223

6.6 小結(jié)227

第7章 Netty時間輪高級應用228

7.1 Netty時間輪的解讀229

7.1.1 時間輪源碼剖析之初始化構建230

7.1.2 時間輪源碼剖析之Worker啟動線程236

7.2 Netty時間輪改造方案制訂239

7.3 時間輪高級應用之架構設計241

7.4 時間輪高級應用之實戰(zhàn)10億級任務243

7.5 小結(jié)245

第8章 問題分析與性能調(diào)優(yōu)246

8.1 Netty服務在Linux服務器上的部署246

8.2 Netty服務模擬秒殺壓測255

8.3 常見生產(chǎn)問題分析264

8.4 性能調(diào)優(yōu)267

8.5 小結(jié)270

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末达吞,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子荒典,更是在濱河造成了極大的恐慌酪劫,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件寺董,死亡現(xiàn)場離奇詭異覆糟,居然都是意外死亡,警方通過查閱死者的電腦和手機遮咖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進店門滩字,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人御吞,你說我怎么就攤上這事麦箍。” “怎么了陶珠?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵挟裂,是天一觀的道長。 經(jīng)常有香客問我揍诽,道長诀蓉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任暑脆,我火速辦了婚禮渠啤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘添吗。我一直安慰自己沥曹,他們只是感情好,可當我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布根资。 她就那樣靜靜地躺著架专,像睡著了一般同窘。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上部脚,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天想邦,我揣著相機與錄音,去河邊找鬼委刘。 笑死丧没,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的锡移。 我是一名探鬼主播呕童,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼淆珊!你這毒婦竟也來了夺饲?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤施符,失蹤者是張志新(化名)和其女友劉穎往声,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體戳吝,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡浩销,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了听哭。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片慢洋。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖陆盘,靈堂內(nèi)的尸體忽然破棺而出普筹,到底是詐尸還是另有隱情,我是刑警寧澤隘马,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布斑芜,位于F島的核電站,受9級特大地震影響祟霍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜盈包,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一沸呐、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧呢燥,春花似錦崭添、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽棘伴。三九已至,卻和暖如春屁置,著一層夾襖步出監(jiān)牢的瞬間焊夸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工蓝角, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留阱穗,地道東北人。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓使鹅,卻偏偏與公主長得像揪阶,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子患朱,可洞房花燭夜當晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容