主页 详情

《Netty进阶之路:跟着案例学Netty》_李林锋著_14531524_9787121352621

【书名】:《Netty进阶之路:跟着案例学Netty》
【作者】:李林锋著
【出版社】:北京:电子工业出版社
【时间】:2019
【页数】:322
【ISBN】:9787121352621
【SS码】:14531524

最新查询

内容简介

第1章 Netty服务端意外退出案例

1.1 Netty服务端意外退出问题

1.1.1 Java Daemon线程简介

1.1.2 Netty服务端启动原理

1.1.3如何防止Netty服务端意外退出

1.1.4实际项目中的优化策略

1.2 Netty优雅退出机制

1.2.1 Java优雅退出机制

1.2.2 Java优雅退出的注意点

1.2.3 Netty优雅退出机制

1.2.4 Netty优雅退出原理和源码分析

1.2.5 Netty优雅退出的一些误区

1.3总结

第2章 Netty客户端连接池资源泄漏案例

2.1 Netty连接池资源泄漏问题

2.1.1连接池创建代码

2.1.2内存溢出和线程膨胀

2.1.3错用NIO编程模式

2.1.4正确的连接池创建方式

2.1.5并发安全和资源释放

2.2 Netty客户端创建机制

2.2.1 Java NIO客户端创建原理分析

2.2.2 Netty客户端创建原理分析

2.2.3 Bootstrap工具类源码分析

2.3总结

第3章 Netty内存池泄漏疑云案例

3.1 Netty内存池泄漏问题

3.1.1路由转发服务代码

3.1.2响应消息内存释放玄机

3.1.3采集堆内存快照分析

3.1.4 ByteBuf申请和释放的理解误区

3.2 Netty内存池工作机制

3.2.1内存池的性能优势

3.2.2内存池工作原理分析

3.2.3内存池核心代码分析

3.3总结

第4章 ByteBuf故障排查案例

4.1 HTTP协议栈ByteBuf使用问题

4.1.1 HTTP响应Body获取异常

4.1.2 ByteBuf非法引用问题

4.1.3 ByteBuf使用注意事项

4.2 Netty ByteBuf实现机制

4.2.1 Java原生ByteBuffer的局限性

4.2.2 Netty ByteBuf工作原理分析

4.2.3 ByteBuf引用计数器工作原理和源码分析

4.3总结

第5章 Netty发送队列积压导致内存泄漏案例

5.1 Netty发送队列积压案例

5.1.1高并发故障场景

5.1.2内存泄漏原因分析

5.1.3如何防止发送队列积压

5.1.4其他可能导致发送队列积压的因素

5.2 Netty消息发送工作机制

5.2.1 WriteAndFlushTask原理和源码分析

5.2.2 ChannelOutboundBuffer原理和源码分析

5.2.3消息发送源码分析

5.2.4消息发送高低水位控制

5.3总结

第6章 API网关高并发压测性能波动案例

6.1高并发压测性能波动问题

6.1.1故障场景模拟

6.1.2性能波动原因定位

6.1.3主动内存泄漏定位法

6.1.4网关类产品的优化建议

6.2 Netty消息接入内存申请机制

6.2.1消息接入的内存分配原理和源码分析

6.2.2 Netty ByteBuf的动态扩容原理和源码分析

6.3总结

第7章 Netty ChannelHandler并发安全案例

7.1 Netty ChannelHandler并发安全问题

7.1.1串行执行的ChannelHandler

7.1.2跨链路共享的ChannelHandler

7.1.3 ChannelHandler的并发陷阱

7.2 Netty ChannelHandler工作机制

7.2.1职责链ChannelPipeline原理和源码分析

7.2.2用户自定义Event原理和源码分析

7.3总结

第8章 车联网服务端接收不到车载终端消息案例

8.1车联网服务端接收不到车载终端消息问题

8.1.1故障现象

8.1.2故障期线程堆栈快照分析

8.1.3 NioEventLoop线程防挂死策略

8.2 NioEventLoop线程工作机制

8.2.11/O读写操作原理和源码分析

8.2.2异步任务执行原理和源码分析

8.2.3定时任务执行原理和源码分析

8.2.4 Netty多线程最佳实践

8.3总结

第9章 Netty 3.X版本升级案例

9.1 Netty 3.X的版本升级背景

9.1.1被迫升级场景

9.1.2升级不当遭遇各种问题

9.2版本升级后数据被篡改问题

9.2.1数据篡改原因分析

9.2.2问题总结

9.3升级后上下文丢失问题

9.3.1上下文丢失原因分析

9.3.2依赖第三方线程模型的思考

9.4升级后应用遭遇性能下降问题

9.4.1性能下降原因分析

9.4.2性能优化建议

9.5 Netty线程模型变更分析

9.5.1 Netty 3.X版本线程模型

9.5.2 Netty 4.X版本线程模型

9.5.3线程模型变化点源码分析

9.5.4线程模型变化总结

9.6总结

第10章 Netty并发失效导致性能下降案例

10.1业务ChannelHandler无法并发执行问题

10.1.1服务端并发设计相关代码分析

10.1.2无法并行执行的EventExecutorGroup

10.1.3并行执行优化策略和结果

10.2 Netty DefaultEventExecutor工作机制

10.2.1 DefaultEventExecutor原理和源码分析

10.2.2业务线程池优化策略

10.2.3 Netty线程绑定机制原理和源码分析

10.3总结

第11章 IoT百万长连接性能调优案例

11.1海量长连接接入面临的挑战

11.1.1 IoT设备接入特点

11.1.2 IoT服务端性能优化场景

11.1.3服务端面临的性能挑战

11.2智能家居内存泄漏问题

11.2.1服务端内存泄漏原因定位

11.2.2问题背后的一些思考

11.3操作系统参数调优

11.3.1文件描述符

11.3.2 TCP/IP相关参数

11.3.3多网卡队列和软中断

11.4 Netty性能调优

11.4.1设置合理的线程数

11.4.2心跳优化

11.4.3接收和发送缓冲区调优

11.4.4合理使用内存池

11.4.5防止I/O线程被意外阻塞

11.4.6 I/O线程和业务线程分离

11.4.7针对端侧并发连接数的流控

11.5 JVM相关性能优化

11.5.1 GC调优

11.5.2其他优化手段

11.6总结

第12章 静态检查修改不当引起性能下降案例

12.1 Edge Service性能严重下降问题

12.1.1 Edge Service热点代码分析

12.1.2静态检查问题不是简单的一改了之

12.1.3问题反思和改进

12.2克隆和浅拷贝

12.2.1浅拷贝存在的问题

12.2.2 Netty的对象拷贝实现策略

12.3总结

第13章 Netty性能统计误区案例

13.1时延毛刺排查相关问题

13.1.1时延毛刺问题初步分析

13.1.2服务调用链改进

13.1.3都是同步思维惹的祸

13.1.4正确的消息发送速度性能统计策略

13.1.5常见的消息发送性能统计误区

13.2 Netty关键性能指标采集策略

13.2.1 Netty I/O线程池性能指标

13.2.2 Netty发送队列积压消息数

13.2.3 Netty消息读取速度性能统计

13.3总结

第14章 gRPC的Netty HTTP/2实践案例

14.1 gRPC基础入门

14.1.1 RPC框架简介

14.1.2当前主流的RPC框架

14.1.3 gRPC框架特点

14.1.4为什么选择HTTP/2

14.2 gRPC Netty HTTP/2服务端工作机制

14.2.1 Netty HTTP/2服务端创建原理和源码分析

14.2.2服务端接收HTTP/2请求消息原理和源码分析

14.2.3服务端发送HTTP/2响应消息原理和源码分析

14.3 gRPC Netty HTTP/2客户端工作机制

14.3.1 Netty HTTP/2客户端创建原理和源码分析

14.3.2客户端发送HTTP/2请求消息原理和源码分析

14.3.3客户端接收HTTP/2响应消息原理和源码分析

14.4 gRPC消息序列化机制

14.4.1 Google Protobuf 简介

14.4.2消息的序列化原理和源码分析

14.4.3消息的反序列化原理和源码分析

14.5 gRPC线程模型

14.5.1服务端线程模型

14.5.2客户端线程模型

14.5.3线程模型总结

14.6总结

第15章 Netty事件触发策略使用不当案例

15.1 channel ReadComplete方法被调用多次问题

15.1.1 ChannelHandler调用问题

15.1.2生产环境问题模拟重现

15.2 ChannelHandler使用的一些误区总结

15.2.1 channelReadComplete方法调用

15.2.2 ChannelHandler职责链调用

15.3总结

第16章 Netty流量整形应用案例

16.1 Netty流量整形功能

16.1.1通用的流量整形功能简介

16.1.2 Netty流量整形功能简介

16.2 Netty流量整形应用

16.2.1流量整形示例代码

16.2.2流量整形功能测试

16.3 Netty流量整形工作机制

16.3.1流量整形工作原理和源码分析

16.3.2并发编程在流量整形中的应用

16.3.3使用流量整形的一些注意事项总结

16.4总结

第17章 Netty SSL应用案例

17.1 Netty SSL功能简介

17.1.1 SSL安全特性

17.1.2 Netty SSL实现机制

17.2 Netty客户端SSL握手超时问题

17.2.1握手超时原因定位

17.2.2 Netty SSL握手问题定位技巧

17.3 SSL握手性能问题

17.3.1 SSL握手性能热点分析

17.3.2缓存和对象池

17.4 SSL事件监听机制

17.4.1握手成功事件

17.4.2 SSL连接关闭事件

17.5总结

第18章 Netty HTTPS服务端高并发宕机案例

18.1 Netty HTTPS服务端宕机问题

18.1.1客户端大量超时

18.1.2服务端内存泄漏原因分析

18.1.3 NioSocketChannel泄漏原因探究

18.1.4高并发场景下缺失的可靠性保护

18.2功能层面的可靠性优化

18.2.1 Netty HTTPS服务端可靠性优化

18.2.2 HTTPS客户端优化

18.3架构层面的可靠性优化

18.3.1端到端架构问题剖析

18.3.2 HTTP Client切换到NIO

18.3.3同步RPC调用切换到异步调用

18.3.4协议升级到HTTP/2

18.4总结

第19章 MQTT服务接入超时案例

19.1 MQTT服务接入超时问题

19.1.1生产环境问题现象

19.1.2连接数膨胀原因分析

19.1.3无效连接的关闭策略

19.1.4问题总结

19.2基于Netty的可靠性设计

19.2.1业务定制I/O异常

19.2.2链路的有效性检测

19.2.3内存保护

19.3总结

第20章 Netty实践总结

20.1 Netty学习策略

20.1.1入门知识准备

20.1.2 Netty入门学习

20.1.3项目实践

20.1.4 Netty源码阅读策略

20.2 Netty故障定位技巧

20.2.1接收不到消息

20.2.2内存泄漏

20.2.3性能问题

20.3总结


书查询(www.shuchaxun.com)本网页唯一编码:
b88260d0ad328c12c1c3d53b56f9f78c#86cce945c9f1a6043abf71bcb891b35f#85486921#14531524.zip