图书介绍
Netty权威指南2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- 李林锋著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121233432
- 出版时间:2014
- 标注页数:507页
- 文件大小:58MB
- 文件页数:526页
- 主题词:JAVA语言-程序设计-指南
PDF下载
下载说明
Netty权威指南PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
基础篇 走进Java NIO2
第1章 Java的I/O演进之路2
1.1 I/O基础入门3
1.1.1 Linux网络I/O模型简介3
1.1.2 I/O多路复用技术6
1.2 Java的I/O演进8
1.3 总结10
第2章 NIO入门11
2.1 传统的BIO编程11
2.1.1 BIO通信模型图12
2.1.2 同步阻塞式I/O创建的TimeServer源码分析13
2.1.3 同步阻塞式I/O创建的TimeClient源码分析16
2.2 伪异步I/O编程18
2.2.1 伪异步I/O模型图19
2.2.2 伪异步式I/O创建的TimeServer源码分析19
2.2.3 伪异步I/O弊端分析21
2.3 NIO编程24
2.3.1 NIO类库简介24
2.3.2 NIO服务端序列图28
2.3.3 NIO创建的TimeServer源码分析31
2.3.4 NIO客户端序列图36
2.3.5 NIO创建的TimeClient源码分析39
2.4 AIO编程45
2.4.1 AIO创建的TimeServer源码分析46
2.4.2 AIO创建的TimeClient源码分析52
2.4.3 AIO版本时间服务器运行结果56
2.5 4种I/O的对比58
2.5.1 概念澄清58
2.5.2 不同I/O模型对比60
2.6 选择Netty的理由60
2.6.1 不选择Java原生NIO编程的原因61
2.6.2 为什么选择Netty62
2.7 总结63
入门篇 Netty NIO开发指南66
第3章 Netty入门应用66
3.1 Netty开发环境的搭建66
3.1.1 下载Netty的软件包67
3.1.2 搭建Netty应用工程67
3.2 Netty服务端开发68
3.3 Netty客户端开发73
3.4 运行和调试76
3.4.1 服务端和客户端的运行76
3.4.2 打包和部署77
3.5 总结78
第4章 TCP粘包/拆包问题的解决之道79
4.1 TCP粘包/拆包79
4.1.1 TCP粘包/拆包问题说明80
4.1.2 TCP粘包/拆包发生的原因80
4.1.3 粘包问题的解决策略81
4.2 未考虑TCP粘包导致功能异常案例82
4.2.1 TimeServer的改造82
4.2.2 TimeClient的改造83
4.2.3 运行结果84
4.3 利用LineBasedFrameDecoder解决TCP粘包问题88
4.3.1 支持TCP粘包的TimeServer88
4.3.2 支持TCP粘包的TimeClient90
4.3.3 运行支持TCP粘包的时间服务器程序93
4.3.4 LineBasedFrameDecoder和StringDecoder的原理分析98
4.4 总结99
第5章 分隔符和定长解码器的应用100
5.1 DelimiterBasedFrameDecoder应用开发101
5.1.1 DelimiterBasedFrameDecoder服务端开发101
5.1.2 DelimiterBasedFrameDecoder客户端开发104
5.1.3 运行DelimiterBasedFrameDecoder服务端和客户端106
5.2 FixedLengthFrameDecoder应用开发108
5.2.1 FixedLengthFrameDecoder服务端开发108
5.2.2 利用telnet命令行测试EchoServer服务端110
5.3 总结111
中级篇 Netty编解码开发指南114
第6章 编解码技术114
6.1 Java序列化的缺点115
6.1.1 无法跨语言115
6.1.2 序列化后的码流太大115
6.1.3 序列化性能太低118
6.2 业界主流的编解码框架121
6.2.1 Google的Protobuf介绍121
6.2.2 Facebook的Thrift介绍123
6.2.3 JBoss Marshalling介绍124
6.3 总结125
第7章 Java序列化126
7.1 NettyJava序列化服务端开发126
7.2 Java序列化Netty客户端开发132
7.3 运行结果135
7.4 总结137
第8章 Google Protobuf编解码138
8.1 Protobuf的入门139
8.1.1 Protobuf开发环境搭建139
8.1.2 Protobuf编解码开发141
8.1.3 运行Protobuf例程143
8.2 Netty的Protobuf服务端开发143
8.2.1 Protobuf版本的图书订购服务端开发144
8.2.2 Protobuf版本的图书订购客户端开发146
8.2.3 Protobuf版本的图书订购程序功能测试149
8.3 Protobuf的使用注意事项152
8.4 总结153
第9章 JBoss Marshalling编解码154
9.1 Marshalling开发环境准备154
9.2 Netty的Marshalling服务端开发155
9.3 Netty的Marshalling客户端开发158
9.4 运行Marshalling客户端和服务端例程160
9.5 总结162
高级篇 Netty多协议开发和应用164
第10章 HTTP协议开发应用164
10.1 HTTP协议介绍165
10.1.1 HTTP协议的URL165
10.1.2 HTTP请求消息(HttpRequest)165
10.1.3 HTTP响应消息(HttpResponse)168
10.2 Netty HTTP服务端入门开发169
10.2.1 HTTP服务端例程场景描述170
10.2.2 HTTP服务端开发170
10.2.3 Netty HTTP文件服务器例程运行结果178
10.3 Netty HTTP+XML协议栈开发182
10.3.1 开发场景介绍183
10.3.2 HTTP+XML协议栈设计186
10.3.3 高效的XML绑定框架JiBx187
10.3.4 HTTP+XML编解码框架开发195
10.3.5 HTTP+XML协议栈测试211
10.3.6 小结213
10.4 总结214
第11章 WebSocket协议开发215
11.1 HTTP协议的弊端216
11.2 WebSocket入门216
11.2.1 WebSocket背景217
11.2.2 WebSocket连接建立218
11.2.3 WebSocket生命周期219
11.2.4 WebSocket连接关闭220
11.3 Netty WebSocket协议开发221
11.3.1 WebSocket服务端功能介绍221
11.3.2 WebSocket服务端开发222
11.3.3 运行WebSocket服务端230
11.4 总结231
第12章 UDP协议开发233
12.1 UDP协议简介234
12.2 UDP服务端开发235
12.3 UDP客户端开发238
12.4 运行UDP例程240
12.5 总结241
第13章 文件传输242
13.1 文件的基础知识243
13.1.1 文件的概念243
13.1.2 文件路径243
13.1.3 文件名称244
13.1.4 File Channel简介244
13.2 Netty文件传输开发245
13.3 运行Netty文件传输服务例程248
13.4 总结250
第14章 私有协议栈开发251
14.1 私有协议介绍251
14.2 Netty协议栈功能设计253
14.2.1 网络拓扑图253
14.2.2 协议栈功能描述254
14.2.3 通信模型254
14.2.4 消息定义255
14.2.5 Netty协议支持的字段类型256
14.2.6 Netty协议的编解码规范257
14.2.7 链路的建立259
14.2.8 链路的关闭260
14.2.9 可靠性设计260
14.2.1 0安全性设计262
14.2.1 1 可扩展性设计262
14.3 Netty协议栈开发263
14.3.1 数据结构定义263
14.3.2 消息编解码267
14.3.3 握手和安全认证271
14.3.4 心跳检测机制275
14.3.5 断连重连278
14.3.6 客户端代码279
14.3.7 服务端代码281
14.4 运行协议栈282
14.4.1 正常场景282
14.4.2 异常场景:服务端宕机重启283
14.4.3 异常场景:客户端宕机重启286
14.5 总结286
源码分析篇 Netty功能介绍和源码分析290
第15章 ByteBuf和相关辅助类290
15.1 ByteBuf功能说明290
15.1.1 ByteBuf的工作原理291
15.1.2 ByteBuf的功能介绍296
15.2 ByteBuf源码分析310
15.2.1 ByteBuf的主要类继承关系311
15.2.2 AbstractByteBuf源码分析312
15.2.3 AbstractReferenceCountedByteBuf源码分析321
15.2.4 UnpooledHeapByteBuf源码分析323
15.2.5 PooledByteBuf内存池原理分析328
15.2.6 PooledDirectByteBuf源码分析331
15.3 ByteBuf相关的辅助类功能介绍334
15.3.1 ByteBufHolder334
15.3.2 ByteBufAllocator335
15.3.3 CompositeByteBuf336
15.3.4 ByteBufUtil338
15.4 总结339
第16章 Channel和Unsafe340
16.1 Channel功能说明340
16.1.1 Channel的工作原理341
16.1.2 Channel的功能介绍342
16.2 Channel源码分析345
16.2.1 Channel的主要继承关系类图345
16.2.2 AbstractChannel源码分析346
16.2.3 AbstractNioChannel源码分析349
16.2.4 AbstractNioByteChannel源码分析352
16.2.5 AbstractNioMessageChannel源码分析356
16.2.6 AbstractNioMessageServerChannel源码分析357
16.2.7 NioServerSocketChannel源码分析358
16.2.8 NioSocketChannel源码分析360
16.3 Unsafe功能说明366
16.4 Unsafe源码分析367
16.4.1 Unsafe继承关系类图367
16.4.2 AbstractUnsafe源码分析367
16.4.3 AbstractNioUnsafe源码分析377
16.4.4 NioByteUnsafe源码分析380
16.5 总结387
第17章 ChannelPipeline 和ChannelHandler389
17.1 ChannelPipeline功能说明390
17.1.1 ChannelPipeline的事件处理390
17.1.2 自定义拦截器392
17.1.3 构建pipeline393
17.1.4 ChannelPipeline的主要特性394
17.2 ChannelPipeline源码分析394
17.2.1 ChannelPipeline的类继承关系图394
17.2.2 ChannelPipeline对ChannelHandler的管理394
17.2.3 ChannelPipeline的inbound事件397
17.2.4 ChannelPipeline的outbound事件398
17.3 ChannelHandler功能说明399
17.3.1 ChannelHandlerAdapter功能说明400
17.3.2 ByteToMessageDecoder功能说明400
17.3.3 MessageToMessageDecoder功能说明401
17.3.4 LengthFieldBasedFrameDecoder功能说明402
17.3.5 MessageToByteEncoder功能说明405
17.3.6 MessageToMessageEncoder功能说明406
17.3.7 LengthFieldPrepender功能说明406
17.4 ChannelHandler源码分析407
17.4.1 ChannelHandler的类继承关系图407
17.4.2 ByteToMessageDecoder源码分析408
17.4.3 MessageToMessageDecoder源码分析411
17.4.4 LengthFieldBasedFrameDecoder源码分析413
17.4.5 MessageToByteEncoder源码分析417
17.4.6 MessageToMessageEncoder源码分析418
17.4.7 LengthFieldPrepender源码分析419
17.5 总结420
第18章 EventLoop和EventLoopGroup421
18.1 Netty的线程模型421
18.1.1 Reactor单线程模型422
18.1.2 Reactor多线程模型423
18.1.3 主从Reactor多线程模型424
18.1.4 Netty的线程模型425
18.1.5 最佳实践427
18.2 NioEventLoop源码分析427
18.2.1 NioEventLoop设计原理427
18.2.2 NioEventLoop继承关系类图428
18.2.3 NioEventLoop429
18.3 总结440
第19章 Future和Promise441
19.1 Future功能441
19.2 ChannelFuture源码分析446
19.3 Promise功能介绍448
19.4 Promise源码分析450
19.4.1 Promise继承关系图450
19.4.2 DefaultPromise450
19.5 总结453
架构和行业应用篇 Netty高级特性456
第20章 Java多线程编程在Netty中的应用456
20.1 Java内存模型与多线程编程456
20.1.1 硬件的发展和多任务处理456
20.1.2 Java 内存模型457
20.2 Netty的并发编程实践459
20.2.1 对共享的可变数据进行正确的同步459
20.2.2 正确的使用锁460
20.2.3 volatile的正确使用462
20.2.4 CAS指令和原子类465
20.2.5 线程安全类的应用467
20.2.6 读写锁的应用470
20.2.7 线程安全性文档说明472
20.2.8 不要依赖线程优先级473
20.3 总结474
第21章 Netty架构剖析475
21.1 Netty逻辑架构475
21.1.1 Reactor通信调度层476
21.1.2 职责链ChannelPipeline476
21.1.3 业务逻辑编排层(Service ChannelHandler)477
21.2 关键架构质量属性477
21.2.1 高性能477
21.2.2 可靠性480
21.2.3 可定制性483
21.2.4 可扩展性483
21.3 总结483
第22章 Netty行业应用484
22.1 Netty在互联网行业的应用485
22.1.1 传统垂直架构面临的问题485
22.1.2 阿里分布式服务框架Dubbo485
22.1.3 Dubbo的架构介绍487
22.1.4 Netty在Dubbo中的应用489
22.1.5 Dubbo框架集成Netty源码分析491
22.2 Netty在大数据领域的应用496
22.3 Netty在游戏行业的应用497
22.3.1 游戏服务端架构介绍498
22.3.2 Netty在游戏服务端的应用501
22.4 总结502
第23章 Netty未来展望503
23.1 应用范围503
23.2 技术演进504
23.3 社区活跃度504
23.4 Road Map504
23.5 总结505
附录 Netty参数配置表506
热门推荐
- 746193.html
- 2475056.html
- 1476263.html
- 2081608.html
- 627249.html
- 1064109.html
- 3496234.html
- 2612427.html
- 3015262.html
- 2935994.html
- http://www.ickdjs.cc/book_160702.html
- http://www.ickdjs.cc/book_3892651.html
- http://www.ickdjs.cc/book_2186641.html
- http://www.ickdjs.cc/book_617205.html
- http://www.ickdjs.cc/book_459893.html
- http://www.ickdjs.cc/book_3215544.html
- http://www.ickdjs.cc/book_773049.html
- http://www.ickdjs.cc/book_2914723.html
- http://www.ickdjs.cc/book_2322090.html
- http://www.ickdjs.cc/book_1202661.html