封面
版权信息
前言
基础篇 走进Java NIO
第1章 Java的I/O演进之路
1.1 I/O基础入门
1.1.1 Linux网络I/O模型简介
1.1.2 I/O多路复用技术
1.2 Java的I/O演进
1.3 总结
第2章 NIO入门
2.1 传统的BIO编程
2.1.1 BIO通信模型图
2.1.2 同步阻塞式I/O创建的TimeServer源码分析
2.1.3 同步阻塞式I/O创建的TimeClient源码分析
2.2 伪异步I/O编程
2.2.1 伪异步I/O模型图
2.2.2 伪异步式I/O创建的TimeServer源码分析
2.2.3 伪异步I/O弊端分析
2.3 NIO编程
2.3.1 NIO类库简介
2.3.2 NIO服务端序列图
2.3.3 NIO创建的TimeServer源码分析
2.3.4 NIO客户端序列图
2.3.5 NIO创建的TimeClient源码分析
2.4 AIO编程
2.4.1 AIO创建的TimeServer源码分析
2.4.2 AIO创建的TimeClient源码分析
2.4.3 AIO版本时间服务器运行结果
2.5 4种I/O的对比
- APP免费
2.5.1 概念澄清
- APP免费
2.5.2 不同I/O模型对比
- APP免费
2.6 选择Netty的理由
- APP免费
2.6.1 不选择Java原生NIO编程的原因
- APP免费
2.6.2 为什么选择Netty
- APP免费
2.7 总结
- APP免费
入门篇 Netty NIO开发指南
- APP免费
第3章 Netty入门应用
- APP免费
3.1 Netty开发环境的搭建
- APP免费
3.1.1 下载Netty的软件包
- APP免费
3.1.2 搭建Netty应用工程
- APP免费
3.2 Netty服务端开发
- APP免费
3.3 Netty客户端开发
- APP免费
3.4 运行和调试
- APP免费
3.4.1 服务端和客户端的运行
- APP免费
3.4.2 打包和部署
- APP免费
3.5 总结
- APP免费
第4章 TCP粘包/拆包问题的解决之道
- APP免费
4.1 TCP粘包/拆包
- APP免费
4.1.1 TCP粘包/拆包问题说明
- APP免费
4.1.2 TCP粘包/拆包发生的原因
- APP免费
4.1.3 粘包问题的解决策略
- APP免费
4.2 未考虑TCP粘包导致功能异常案例
- APP免费
4.2.1 TimeServer的改造
- APP免费
4.2.2 TimeClient的改造
- APP免费
4.2.3 运行结果
- APP免费
4.3 利用LineBasedFrameDecoder解决TCP粘包问题
- APP免费
4.3.1 支持TCP粘包的TimeServer
- APP免费
4.3.2 支持TCP粘包的TimeClient
- APP免费
4.3.3 运行支持TCP粘包的时间服务器程序
- APP免费
4.3.4 LineBasedFrameDecoder和StringDecoder的原理分析
- APP免费
4.4 总结
- APP免费
第5章 分隔符和定长解码器的应用
- APP免费
5.1 DelimiterBasedFrameDecoder应用开发
- APP免费
5.1.1 DelimiterBasedFrameDecoder服务端开发
- APP免费
5.1.2 DelimiterBasedFrameDecoder客户端开发
- APP免费
5.1.3 运行DelimiterBasedFrameDecoder服务端和客户端
- APP免费
5.2 FixedLengthFrameDecoder应用开发
- APP免费
5.2.1 FixedLengthFrameDecoder服务端开发
- APP免费
5.2.2 利用telnet命令行测试EchoServer服务端
- APP免费
5.3 总结
- APP免费
中级篇 Netty编解码开发指南
- APP免费
第6章 编解码技术
- APP免费
6.1 Java序列化的缺点
- APP免费
6.1.1 无法跨语言
- APP免费
6.1.2 序列化后的码流太大
- APP免费
6.1.3 序列化性能太低
- APP免费
6.2 业界主流的编解码框架
- APP免费
6.2.1 Google的Protobuf介绍
- APP免费
6.2.2 Facebook的Thrift介绍
- APP免费
6.2.3 JBoss Marshalling介绍
- APP免费
6.3 总结
- APP免费
第7章 Java序列化
- APP免费
7.1 Netty Java序列化服务端开发
- APP免费
7.2 Java序列化Netty客户端开发
- APP免费
7.3 运行结果
- APP免费
7.4 总结
- APP免费
第8章 Google Protobuf编解码
- APP免费
8.1 Protobuf的入门
- APP免费
8.1.1 Protobuf开发环境搭建
- APP免费
8.1.2 Protobuf编解码开发
- APP免费
8.1.3 运行Protobuf例程
- APP免费
8.2 Netty的Protobuf服务端开发
- APP免费
8.2.1 Protobuf版本的图书订购服务端开发
- APP免费
8.2.2 Protobuf版本的图书订购客户端开发
- APP免费
8.2.3 Protobuf版本的图书订购程序功能测试
- APP免费
8.3 Protobuf的使用注意事项
- APP免费
8.4 总结
- APP免费
第9章 JBoss Marshalling编解码
- APP免费
9.1 Marshalling开发环境准备
- APP免费
9.2 Netty的Marshalling服务端开发
- APP免费
9.3 Netty的Marshalling客户端开发
- APP免费
9.4 运行Marshalling客户端和服务端例程
- APP免费
9.5 总结
- APP免费
高级篇 Netty多协议开发和应用
- APP免费
第10章 HTTP协议开发应用
- APP免费
10.1 HTTP协议介绍
- APP免费
10.1.1 HTTP协议的URL
- APP免费
10.1.2 HTTP请求消息(HttpRequest)
- APP免费
10.1.3 HTTP响应消息(HttpResponse)
- APP免费
10.2 Netty HTTP服务端入门开发
- APP免费
10.2.1 HTTP服务端例程场景描述
- APP免费
10.2.2 HTTP服务端开发
- APP免费
10.2.3 Netty HTTP文件服务器例程运行结果
- APP免费
10.3 Netty HTTP+XML协议栈开发
- APP免费
10.3.1 开发场景介绍
- APP免费
10.3.2 HTTP+XML协议栈设计
- APP免费
10.3.3 高效的XML绑定框架JiBx
- APP免费
10.3.4 HTTP+XML编解码框架开发
- APP免费
10.3.5 HTTP+XML协议栈测试
- APP免费
10.3.6 小结
- APP免费
10.4 总结
- APP免费
第11章 WebSocket协议开发
- APP免费
11.1 HTTP协议的弊端
- APP免费
11.2 WebSocket入门
- APP免费
11.2.1 WebSocket背景
- APP免费
11.2.2 WebSocket连接建立
- APP免费
11.2.3 WebSocket生命周期
- APP免费
11.2.4 WebSocket连接关闭
- APP免费
11.3 Netty WebSocket协议开发
- APP免费
11.3.1 WebSocket服务端功能介绍
- APP免费
11.3.2 WebSocket服务端开发
- APP免费
11.3.3 运行WebSocket服务端
- APP免费
11.4 总结
- APP免费
第12章 UDP协议开发
- APP免费
12.1 UDP协议简介
- APP免费
12.2 UDP服务端开发
- APP免费
12.3 UDP客户端开发
- APP免费
12.4 运行UDP例程
- APP免费
12.5 总结
- APP免费
第13章 文件传输
- APP免费
13.1 文件的基础知识
- APP免费
13.1.1 文件的概念
- APP免费
13.1.2 文件路径
- APP免费
13.1.3 文件名称
- APP免费
13.1.4 FileChannel简介
- APP免费
13.2 Netty文件传输开发
- APP免费
13.3 运行Netty文件传输服务例程
- APP免费
13.4 总结
- APP免费
第14章 私有协议栈开发
- APP免费
14.1 私有协议介绍
- APP免费
14.2 Netty协议栈功能设计
- APP免费
14.2.1 网络拓扑图
- APP免费
14.2.2 协议栈功能描述
- APP免费
14.2.3 通信模型
- APP免费
14.2.4 消息定义
- APP免费
14.2.5 Netty协议支持的字段类型
- APP免费
14.2.6 Netty协议的编解码规范
- APP免费
14.2.7 链路的建立
- APP免费
14.2.8 链路的关闭
- APP免费
14.2.9 可靠性设计
- APP免费
14.2.10 安全性设计
- APP免费
14.2.11 可扩展性设计
- APP免费
14.3 Netty协议栈开发
- APP免费
14.3.1 数据结构定义
- APP免费
14.3.2 消息编解码
- APP免费
14.3.3 握手和安全认证
- APP免费
14.3.4 心跳检测机制
- APP免费
14.3.5 断连重连
- APP免费
14.3.6 客户端代码
- APP免费
14.3.7 服务端代码
- APP免费
14.4 运行协议栈
- APP免费
14.4.1 正常场景
- APP免费
14.4.2 异常场景:服务端宕机重启
- APP免费
14.4.3 异常场景:客户端宕机重启
- APP免费
14.5 总结
- APP免费
源码分析篇 Netty功能介绍和源码分析
- APP免费
第15章 ByteBuf和相关辅助类
- APP免费
15.1 ByteBuf功能说明
- APP免费
15.1.1 ByteBuf的工作原理
- APP免费
15.1.2 ByteBuf的功能介绍
- APP免费
15.2 ByteBuf源码分析
- APP免费
15.2.1 ByteBuf的主要类继承关系
- APP免费
15.2.2 AbstractByteBuf源码分析
- APP免费
15.2.3 AbstractReferenceCountedByteBuf源码分析
- APP免费
15.2.4 UnpooledHeapByteBuf源码分析
- APP免费
15.2.5 PooledByteBuf内存池原理分析
- APP免费
15.2.6 PooledDirectByteBuf源码分析
- APP免费
15.3 ByteBuf相关的辅助类功能介绍
- APP免费
15.3.1 ByteBufHolder
- APP免费
15.3.2 ByteBufAllocator
- APP免费
15.3.3 CompositeByteBuf
- APP免费
15.3.4 ByteBufUtil
- APP免费
15.4 总结
- APP免费
第16章 Channel和Unsafe
- APP免费
16.1 Channel 功能说明
- APP免费
16.1.1 Channel的工作原理
- APP免费
16.1.2 Channel的功能介绍
- APP免费
16.2 Channel源码分析
- APP免费
16.2.1 Channel的主要继承关系类图
- APP免费
16.2.2 AbstractChannel源码分析
- APP免费
16.2.3 AbstractNioChannel源码分析
- APP免费
16.2.4 AbstractNioByteChannel源码分析
- APP免费
16.2.5 AbstractNioMessageChannel源码分析
- APP免费
16.2.6 AbstractNioMessageServerChannel源码分析
- APP免费
16.2.7 NioServerSocketChannel源码分析
- APP免费
16.2.8 NioSocketChannel源码分析
- APP免费
16.3 Unsafe功能说明
- APP免费
16.4 Unsafe源码分析
- APP免费
16.4.1 Unsafe继承关系类图
- APP免费
16.4.2 AbstractUnsafe源码分析
- APP免费
16.4.3 AbstractNioUnsafe源码分析
- APP免费
16.4.4 NioByteUnsafe源码分析
- APP免费
16.5 总结
- APP免费
第17章 ChannelPipeline和ChannelHandler
- APP免费
17.1 ChannelPipeline功能说明
- APP免费
17.1.1 ChannelPipeline的事件处理
- APP免费
17.1.2 自定义拦截器
- APP免费
17.1.3 构建pipeline
- APP免费
17.1.4 ChannelPipeline的主要特性
- APP免费
17.2 ChannelPipeline源码分析
- APP免费
17.2.1 ChannelPipeline的类继承关系图
- APP免费
17.2.2 ChannelPipeline对ChannelHandler的管理
- APP免费
17.2.3 ChannelPipeline的inbound事件
- APP免费
17.2.4 ChannelPipeline的outbound事件
- APP免费
17.3 ChannelHandler功能说明
- APP免费
17.3.1 ChannelHandlerAdapter功能说明
- APP免费
17.3.2 ByteToMessageDecoder功能说明
- APP免费
17.3.3 MessageToMessageDecoder功能说明
- APP免费
17.3.4 LengthFieldBasedFrameDecoder功能说明
- APP免费
17.3.5 MessageToByteEncoder功能说明
- APP免费
17.3.6 MessageToMessageEncoder功能说明
- APP免费
17.3.7 LengthFieldPrepender功能说明
- APP免费
17.4 ChannelHandler源码分析
- APP免费
17.4.1 ChannelHandler的类继承关系图
- APP免费
17.4.2 ByteToMessageDecoder源码分析
- APP免费
17.4.3 MessageToMessageDecoder源码分析
- APP免费
17.4.4 LengthFieldBasedFrameDecoder源码分析
- APP免费
17.4.5 MessageToByteEncoder源码分析
- APP免费
17.4.6 MessageToMessageEncoder源码分析
- APP免费
17.4.7 LengthFieldPrepender源码分析
- APP免费
17.5 总结
- APP免费
第18章 EventLoop和EventLoopGroup
- APP免费
18.1 Netty的线程模型
- APP免费
18.1.1 Reactor单线程模型
- APP免费
18.1.2 Reactor多线程模型
- APP免费
18.1.3 主从Reactor多线程模型
- APP免费
18.1.4 Netty的线程模型
- APP免费
18.1.5 最佳实践
- APP免费
18.2 NioEventLoop源码分析
- APP免费
18.2.1 NioEventLoop设计原理
- APP免费
18.2.2 NioEventLoop继承关系类图
- APP免费
18.2.3 NioEventLoop
- APP免费
18.3 总结
- APP免费
第19章 Future和Promise
- APP免费
19.1 Future功能
- APP免费
19.2 ChannelFuture源码分析
- APP免费
19.3 Promise功能介绍
- APP免费
19.4 Promise源码分析
- APP免费
19.4.1 Promise继承关系图
- APP免费
19.4.2 DefaultPromise
- APP免费
19.5 总结
- APP免费
架构和行业应用篇 Netty高级特性
- APP免费
第20章 Java多线程编程在Netty中的应用
- APP免费
20.1 Java内存模型与多线程编程
- APP免费
20.1.1 硬件的发展和多任务处理
- APP免费
20.1.2 Java内存模型
- APP免费
20.2 Netty的并发编程实践
- APP免费
20.2.1 对共享的可变数据进行正确的同步
- APP免费
20.2.2 正确的使用锁
- APP免费
20.2.3 volatile的正确使用
- APP免费
20.2.4 CAS指令和原子类
- APP免费
20.2.5 线程安全类的应用
- APP免费
20.2.6 读写锁的应用
- APP免费
20.2.7 线程安全性文档说明
- APP免费
20.2.8 不要依赖线程优先级
- APP免费
20.3 总结
- APP免费
第21章 Netty架构剖析
- APP免费
21.1 Netty逻辑架构
- APP免费
21.1.1 Reactor通信调度层
- APP免费
21.1.2 职责链ChannelPipeline
- APP免费
21.1.3 业务逻辑编排层(Service ChannelHandler)
- APP免费
21.2 关键架构质量属性
- APP免费
21.2.1 高性能
- APP免费
21.2.2 可靠性
- APP免费
21.2.3 可定制性
- APP免费
21.2.4 可扩展性
- APP免费
21.3 总结
- APP免费
第22章 Netty行业应用
- APP免费
22.1 Netty在互联网行业的应用
- APP免费
22.1.1 传统垂直架构面临的问题
- APP免费
22.1.2 阿里分布式服务框架Dubbo
- APP免费
22.1.3 Dubbo的架构介绍
- APP免费
22.1.4 Netty在Dubbo中的应用
- APP免费
22.1.5 Dubbo框架集成Netty源码分析
- APP免费
22.2 Netty在大数据领域的应用
- APP免费
22.3 Netty在游戏行业的应用
- APP免费
22.3.1 游戏服务端架构介绍
- APP免费
22.3.2 Netty在游戏服务端的应用
- APP免费
22.4 总结
- APP免费
第23章 Netty未来展望
- APP免费
23.1 应用范围
- APP免费
23.2 技术演进
- APP免费
23.3 社区活跃度
- APP免费
23.4 Road Map
- APP免费
23.5 总结
- APP免费
附录 Netty参数配置表
更新时间:2024-01-05 16:22:10