netty工程经验tips
2021-05-19 本文已影响0人
江江的大猪
- netty服务端高低水位设置配合channelWritabilityChanged设置autoRead做到保护
public void channelWritabilityChanged(ChannelHandlerContext ctx) throws Exception {
if (ctx.channel().config().isAutoRead() != ctx.channel().isWritable()) {
ctx.channel().config().setAutoRead(ctx.channel().isWritable());
}
super.channelWritabilityChanged(ctx);
}
- netty客户端可以通过信号量控制同一时间的请求量,避免oom
- netty做连接管理,一部分依赖注册和注销实时处理,一部分依赖定时过期扫描。大型分布式系统做这种连接管理,都是这样并行方案