客户端发送消息,一直处于高峰,每秒几千条。或曲线状态。此时客户端内存不断飙升 分析原因:客户端发送存在大量缓存,因服务端接收能力有限。 客户端注掉: bootstrap.option(ChannelOption.RCVBUF_ALLOCATOR,new AdaptiveRecvByteBufAllocator(Constants.RCVBUF_ALLOCATOR_MIN, Constants.RCVBUF_ALLOCATOR_INITIAL, Constants.RCVBUF_ALLOCATOR_MAX));
服务端同样注掉RCVBUF_ALLOCATOR
在一直高峰时依然内存不断上涨,但曲线状态,则较为理想。
从客户端跑完之后,服务端还在一直跑接收消息来看,问题出在服务端处理能力有限,很多信息暂存服务端内存,继续接收客户端消息慢。
推荐阅读
- Netty权威指南--图片
- Netty简介
- NIO|Netty应用篇
- Netty|Netty实现聊天室
- 《Netty学习打卡--从小白到放弃》----- 14 - netty 之grpc 初识grpc
- 《Netty学习打卡--从小白到放弃》----- 15 - netty 之grpc Simple RPC 例子
- Netty(一)--java NIO详解
- Netty|Netty4详解一(理解Netty的设计理念NIO)
- 通过Netty实现与硬件设备(充电桩)通讯的功能
- Netty-NIO 详解、说明、优缺