在Netty中BossGroup负责客户端的连接请求事件,当客户端连接事件处理完毕后,便将该客户端对应的通道注册到WorkerGroup中,在WorkerGroup中有多个NIOEventLoop事件循环,该NIOEventLoop本身就是一个线程,而且每个NIOEventLoop都有着自己独立的Selector对象可以用来注册多个通道,WorkerGroup会按照命名如同nioEventLoopGroup-3-1的方式分配一个NIOEventLoop给该客户端,而注册到WorkerGroup中的通道也就注册到该NIOEventLoop的选择器中Selector,后面就负责与该客户端的通信。

ChannelHandlerContext:通道处理器上下文
pipeline:管道
channel:通道
这三个都是可以相互获取的,且ChannelHandlerContext和pipeline都是双向列表结构
这个是我个人所学所感,哪里说的不对请大家指出,一起学习,一起努力!

本文详细介绍了Netty中BossGroup和WorkerGroup的角色分工。BossGroup负责接收客户端连接,完成TCP三次握手后,将连接注册到WorkerGroup。WorkerGroup内有多个NIOEventLoop线程,每个线程对应一个Selector,处理与客户端的后续通信。ChannelHandlerContext、pipeline和channel在Netty中相互关联,形成双向列表结构,方便处理网络事件。

466

被折叠的 条评论
为什么被折叠?



