netty的机制

1个EventLoop包括1个selector和1个taskqueue和多个(channel+pipeline)的组合

Future-Listener机制

不能在channelHandler当中调用await()方法

NioEventLoop就是Reactor

粘包和半包问题原因:

1、数据的大小和缓冲区的大小

2、MSS(从传输层到网络层)

3、MTU(从网络层到数据链路层)

4、nagle算法

解决办法:

1、分隔符

2、固定长度

3、每次指定长度

netty消费端的限流机制:

  首先一点,nettywriteAndFlush是异步的,会加载在taskQueue里面,

  第二点,netty会有发送的缓冲器,也就是一个高低水位的机制

  第三点,就是jdk发送缓冲区的大小

  

参考文献

netty的高低水位机制

netty的内存泄漏危机

原文地址:https://www.cnblogs.com/erdanyang/p/13155511.html