Netty實戰(zhàn) 版權(quán)信息
- ISBN:9787302563402
- 條形碼:9787302563402 ; 978-7-302-56340-2
- 裝幀:一般膠版紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>>
Netty實戰(zhàn) 本書特色
Netty是一個開源的、基于NIO的客戶端和服務(wù)器端Java編程框架。本書涵蓋Netty開發(fā)中絕大多數(shù)需要掌握的基本原理、方法與技巧,是一本比較實用Netty框架技術(shù)參考書,可以作為Java Web應(yīng)用開發(fā)人員的技術(shù)指導(dǎo)手冊。
長連接、高并發(fā)、海量數(shù)據(jù)、高性能成為使用Netty就是我們絕佳的選擇
Netty實戰(zhàn) 內(nèi)容簡介
Netty是一個開源的、基于NIO的客戶端和服務(wù)器端Java編程框架。本書涵蓋Netty開發(fā)中絕大多數(shù)需要掌握的基本原理、方法與技巧,是一本比較實用的Netty參考書,可以作為Java Web應(yīng)用開發(fā)人員的技術(shù)指導(dǎo)手冊。
全書分為10章,包括Netty基礎(chǔ)(從Java IO演進(jìn))、構(gòu)建完整的Netty應(yīng)用、Netty線程模型、Netty內(nèi)存管理、Transport(傳輸)、Channel(通道)、Codec(編解碼器)和Bootstrap(引導(dǎo))等核心內(nèi)容的8章,還包括基于WebSocket構(gòu)建Netty響應(yīng)服務(wù)器和Netty消息推送系統(tǒng)這兩個項目實戰(zhàn)的2章。本書對應(yīng)用Netty框架開發(fā)網(wǎng)絡(luò)應(yīng)用有很好的指導(dǎo)作用。
本書內(nèi)容簡潔明了、通俗易懂、原理清晰、重點突出、實例豐富、代碼精練,適合想要學(xué)習(xí)Netty的Java Web應(yīng)用開發(fā)人員,同時也很好適合作為高等院校和培訓(xùn)學(xué)校計算機及相關(guān)專業(yè)的輔助教材。
Netty實戰(zhàn) 目錄
第1章 從Java IO到Netty
1.1 了解Java中的IO通信
1.1.1 IO通信基礎(chǔ)
1.1.2 “同步/異步”與“阻塞/非阻塞”
1.1.3 傳統(tǒng)BIO模式
1.1.4 偽異步IO模式
1.1.5 NIO模式
1.1.6 AIO模式
1.2 初識Netty
1.2.1 Netty特點
1.2.2 搭建Netty開發(fā)環(huán)境
1.2.3 Netty開發(fā)工具—IntelliJ IDEA
1.3 實戰(zhàn):Netty版的“Hello World”程序
1.3.1 使用IntelliJ IDEA創(chuàng)建項目
1.3.2 引入Netty包
1.3.3 編寫Netty應(yīng)用程序
1.3.4 測試HelloNetty服務(wù)器端應(yīng)用
1.4 Netty框架模塊介紹
1.4.1 Netty框架功能模塊的組織結(jié)構(gòu)
1.4.2 Netty Bootstrap入口模塊
1.4.3 Netty Channel傳輸通道模塊
1.4.4 Netty EventLoop事件循環(huán)模塊
1.4.5 Netty ChannelFuture異步通知接口
1.4.6 ChannelHandler與ChannelPipeline接口
1.5 小結(jié)
第2章 構(gòu)建完整的Netty應(yīng)用程序
2.1 搭建完整的Netty架構(gòu)
2.1.1 通過Intellij IDEA創(chuàng)建Java應(yīng)用程序
2.1.2 導(dǎo)入jar包文件
2.1.3 組織源碼目錄架構(gòu)
2.2 開發(fā)Netty丟棄應(yīng)用(DiscardNetty)
2.2.1 創(chuàng)建Java源碼文件
2.2.2 服務(wù)器端實現(xiàn)
2.2.3 客戶端實現(xiàn)
2.2.4 測試運行DiscardNetty應(yīng)用
2.3 開發(fā)Netty響應(yīng)應(yīng)用(EchoNetty)
2.3.1 創(chuàng)建Java源碼文件
2.3.2 服務(wù)器端實現(xiàn)
2.3.3 客戶端實現(xiàn)
2.3.4 測試運行EchoNetty應(yīng)用
2.4 小結(jié)
第3章 Netty線程模型
3.1 線程基礎(chǔ)
3.1.1 線程(Thread)
3.1.2 進(jìn)程(Process)
3.1.3 進(jìn)程與線程的關(guān)系
3.2 Java線程池
3.2.1 什么是線程池(Thread Pool)
3.2.2 線程池模型
3.2.3 Java線程池
3.3 Reactor模型
3.3.1 I/O多路復(fù)用策略
3.3.2 Reactor模型和Proactor模型
3.3.3 Reactor線程模型
3.4 Netty線程模型
3.4.1 Netty線程模型與Reactor模型的關(guān)系
3.4.2 Netty單線程模型應(yīng)用
3.4.3 Netty多線程模型應(yīng)用
3.4.4 主從Netty多線程模型應(yīng)用
3.4.5 Netty線程模型流程
3.5 小結(jié)
第4章 Netty內(nèi)存管理
4.1 內(nèi)存管理基礎(chǔ)
4.1.1 什么是內(nèi)存管理
4.1.2 Netty內(nèi)存管理方式
4.1.3 Buffer模塊
4.2 Netty內(nèi)存管理核心
4.2.1 什么是ByteBuf
4.2.2 ByteBuf及其輔助類
4.2.3 ByteBuf工作原理
4.2.4 ByteBuf動態(tài)擴展
4.2.5 ByteBuf使用模式
4.2.6 ByteBuf字節(jié)操作
4.3 Netty內(nèi)存管理輔助類
4.3.1 ByteBufAllocator內(nèi)存分配
4.3.2 Unpooled負(fù)責(zé)非池化緩存
4.3.3 ByteBufHolder接口設(shè)計
4.3.4 ReferenceCounted引用計數(shù)器
4.3.5 ByteBufUtil接口設(shè)計
4.4 Netty實現(xiàn)“零拷貝”
4.5 Netty內(nèi)存泄漏檢測機制
4.6 小結(jié)
第5章 Netty傳輸功能
5.1 Netty Transport基礎(chǔ)
5.2 Netty Transport傳輸方式
5.2.1 NIO方式
5.2.2 OIO方式
5.2.3 Local本地方式
5.2.4 Embedded嵌入方式
5.3 Netty Transport API
5.3.1 Channel接口原理
5.3.2 Channel接口功能
5.3.3 Channel接口應(yīng)用實例
5.4 Netty Transport協(xié)議
5.4.1 NIO傳輸協(xié)議
5.4.2 OIO傳輸協(xié)議
5.4.3 本地傳輸協(xié)議
5.4.4 內(nèi)嵌傳輸協(xié)議
5.5 小結(jié)
第6章 Netty Channel
6.1 Channel基礎(chǔ)
6.1.1 什么是Channel
6.1.2 Stream與Channel對比
6.1.3 Java NIO Channel介紹
6.2 Netty Channel接口
6.2.1 Channel接口架構(gòu)
6.2.2 Channel接口實現(xiàn)
6.2.3 Channel接口生命周期
6.3 Netty ChannelHandler接口
6.3.1 ChannelHandler接口架構(gòu)
6.3.2 ChannelHandler接口生命周期
6.3.3 ChannelHandlerAdapter子接口
6.3.4 ChannelHandler子接口
6.3.5 ChannelHandler資源管理與泄漏等級
6.4 Netty ChannelPipeline接口
6.4.1 ChannelPipeline接口架構(gòu)
6.4.2 ChannelPipeline與ChannelHandler關(guān)系
6.4.3 ChannelPipeline實現(xiàn)
6.4.4 ChannelPipeline修改
6.4.5 ChannelHandler執(zhí)行ChannelPipeline與阻塞
6.4.6 ChannelPipeline事件傳遞
6.5 Netty ChannelHandlerContext接口
6.5.1 ChannelHandlerContext接口基礎(chǔ)
6.5.2 ChannelHandlerContext接口使用
6.6 小結(jié)
第7章 Netty編碼與解碼
7.1 Codec基礎(chǔ)
7.1.1 編碼與解碼
7.1.2 Codec的作用
7.1.3 Netty Codec基礎(chǔ)
7.2 Netty Encode編碼器
7.3 Netty Decode解碼器
7.4 Netty Codec抽象類
7.4.1 Netty Codec概述
7.4.2 ByteToMessageCodec類
7.4.3 MessageToMessageCodec類
7.4.4 CombinedChannelDuplexHandler類
7.5 小結(jié)
第8章 Netty引導(dǎo)
8.1 Bootstrap基礎(chǔ)
8.2 Bootstrap類型
8.3 Bootstrap客戶端
8.3.1 Bootstrap客戶端引導(dǎo)原理
8.3.2 Bootstrap客戶端類介紹
8.3.3 Bootstrap構(gòu)建NIO客戶端
8.4 Bootstrap服務(wù)器端
8.4.1 ServerBootstrap服務(wù)器端引導(dǎo)原理
8.4.2 ServerBootstrap服務(wù)器端類介紹
8.4.3 ServerBootstrap構(gòu)建NIO服務(wù)器端
8.5 從Channel引導(dǎo)客戶端
8.6 服務(wù)器端配置兩個EventLoopGroup
8.7 小結(jié)
第9章 項目實戰(zhàn):基于WebSocket搭建Netty服務(wù)器
9.1 WebSocket協(xié)議
9.1.1 WebSocket介紹
9.1.2 WebSocket與Socket
9.1.3 WebSocket與HTTP和TCP
9.2 構(gòu)建Netty響應(yīng)服務(wù)器應(yīng)用程序框架
9.2.1 Maven構(gòu)建工具配置
9.2.2 IntelliJ IDEA通過Maven構(gòu)建應(yīng)用程序
9.2.3 Maven工程架構(gòu)目錄
9.3 基于WebSocket的Netty響應(yīng)服務(wù)器端開發(fā)
9.3.1 服務(wù)器端Server主入口類
9.3.2 服務(wù)器端Server子處理器類
9.3.3 服務(wù)器端Handler輔助類
9.4 基于WebSocket的Netty響應(yīng)客戶端開發(fā)
9.5 測試運行Netty應(yīng)用程序
9.6 小結(jié)
第10章 項目實戰(zhàn):基于Netty構(gòu)建消息推送系統(tǒng)
10.1 WebSocket特點
10.2 Netty消息推送系統(tǒng)應(yīng)用程序架構(gòu)
10.3 Netty消息推送系統(tǒng)服務(wù)器端開發(fā)
10.3.1 服務(wù)器端Server主入口類
10.3.2 服務(wù)器端Server子處理器類
10.3.3 服務(wù)器端Handler輔助類
10.3.4 服務(wù)器端Channel輔助類
10.4 Netty消息推送系統(tǒng)客戶端開發(fā)
10.4.1 基于Netty構(gòu)建客戶端的實現(xiàn)
10.4.2 基于WebSocket的HTML5客戶端網(wǎng)頁
10.5 測試運行Netty應(yīng)用程序
10.6 小結(jié)
展開全部
Netty實戰(zhàn) 作者簡介
王金柱,對JavaScript語言、jQuery框架、Node.js、React等Web前端開發(fā)有著獨到的經(jīng)驗,并精通HTML/XHTML、CSS與PHP等開發(fā)語言的應(yīng)用。有著10多年豐富的IT從業(yè)經(jīng)歷,完成過多家大型央企與上市公司的企業(yè)級Web系統(tǒng)平臺項目的前端模塊開發(fā)工作。