Netty 原理解析與開發實戰
內容描述
本書介紹新Netty框架核心概念、設計原理,並通過詳細示例對知識點進行講解。該書分為以下幾部分: 入門(第1-2章):介紹Netty基本概念、架構。使讀者對Netty有初步的認識; 進階(第3-6章):介紹Netty核心組件及線程模型,包括Channel、緩沖、引導等。使讀者可以上手開發Netty應用; 高階(第7-12章):介紹Netty高級用法及綜合案例分析。使讀者能夠理解網絡編碼中的高級用法; 實戰(第13章):演示基於Netty構建真實應用的過程。使讀者能夠掌握設計和開發Netty應用的能力。 本書主要面向的是對Java高並發、高性能網絡編程感興趣的學生、開發人員和架構師。
目錄大綱
第1章 Netty 概述........... 1
1.1 Java 網絡編程進化史 ...............2
1.2 Netty 的優勢............ 18
1.3 Netty 核心概念.......... 22
1.4 Netty 開發環境的搭建................... 24
1.5 實戰:快速開啟第一個 Netty 應用...................... 30
第2章 Netty 架構設計 ...........39
2.1 理解 Selector 模型.................. 40
2.2 事件驅動.......................... 44
2.3 責任鏈模式...................... 47
第3章 Channel ...........51
第4章 字節緩沖區 ..............107
第5章 引導程序 ..............161
5.1 引導程序類.................. 162
5.2 實戰:引導服務器 ....................... 173
5.3 實戰:引導客戶端 ....................... 176
5.4 實戰:引導無連接協議........................ 178
第6章 線程模型........ 195
6.1 Java 線程模型的不足 .................. 196
6.2 線程模型的類型 ..................... 201
6.3 EventLoop 接口........................ 219
6.4 EventLoopGroup 接口 .............. 221
6.5 任務調度................. 224
6.6 Future ........................ 227
6.7 Promise ................... 232
第7章 編解碼 ........248
第8章 ChannelHandler ........314
第9章 常用網絡協議 ........389
第 10 章 測試 ........472
第 11 章 案例分析 ........484
11.1 高性能消息中間件——Apache RocketMQ..................... 485
11.2 異步編程框架——Eclipse Vert.x ............................... 499
11.3 高性能 PRC 框架——Apache Dubbo..................... 510
11.3.1 入門示例 Provider ............................... 511
第 12 章 實戰:實現監控系統整體設計 ........523
12.1 監控系統概述........................ 524
12.2 架構設計 ........................ 524
12.3 通信協議設計........................ 531
12.4 數據庫設計..................... 535
第 13 章 實戰:實現監控系統數據採集 ........539
第 14 章 實戰:實現監控系統數據存儲 ........557
第 15 章 實戰:實現監控系統數據展示 ........571 1
第 16 章 實戰:實現監控系統高可用部署 ........605
16.1 NGINX 概述.................. 606
16.2 部署 Angular 應用 .................... 610
16.3 實現負載均衡及高可用................. 613
附錄 ...........617
參考文獻 ........618
作者介紹
柳偉衛
網名老衛、waylau,在 IT 公司擔任項目經理、架構師、高級技術顧問等職位,是 CSDN、 開源中國、雲棲社區等技術社區專家,慕課網特邀講師。
具有多年軟件開發管理及系統架構經驗。
負責過多個省、國家級大型分佈式系統的設計與研發,參與了多個大型項目的微服務架構的技術改造,
在實際工作中,積累了大量的微服務架構以及性能調優經驗。
業餘時間創建了 waylau.com 網站,用於分享個人技術心得。
喜歡開源,長期躍於各大開源社區,編著了《Netty 4.x 用戶指南》《Netty 實戰(精髓)》等近30餘本技術教程,廣受網友好評。
已出版《分佈式系統常用技術及案例分析》《Spring Boot 企業級應用開發實戰》《Spring Cloud 微服務架構開發實戰》等專著。