首页 > 代码库 > Netty应用笔记

Netty应用笔记

Netty是一个优秀的网络并发式处理软件框架。

主要概念:

  • 消息循环:并发处理核心,响应请求的模式,可使用线程池,消息队列等方式;
  • 通道(Channel):每一次请求将会创建一个通道;
  • 句柄(Handler):数据处理的最小单位,分为请求句柄(Inbound)和响应句柄(Outbound),一个通道可以通过多个句柄,分步对数据进行处理,如:先解码,数据处理,加密等操作;

细节问题:

  • SimpleChannelInboundHandler 在接收到数据后会自动release掉数据占用的Bytebuffer资源(自动调用Bytebuffer.release())。一般用于客户端
  • ChannelInboundHandlerAdapter 不会。一般用于服务端。
  • 修改请求Header将分导致请求重新处理,如增加HTTP头属性

Handler组织和数据传递源码:io.netty.channel.AbstractChannelHandlerContext

Netty应用笔记