本人刚刚接触Netty,所以如果有不正确的地方,希望大家积极指出并一起讨论~~
Channel----Socket
EventLoop----用于控制流、多线程处理、并发
ChannelFuture----异步通知
1.Channel、EventLoop、ChannelFuture
1.1 Channel接口
Netty中的Channel所提供的API,大大降低了使用Socket的复杂性。Channel是一个Java NIO的一个基本构造。可简单的理解为把Channel看作入站或者出站的载体。因此,它也可以被打开或者关闭
1.2 EventLoop接口
EventLoop是Netty中的核心组件,用于处理连接的生命周期中所发生的事件
Channel、EventLoop、EventLoopGroup之间的关系:
- 一个EventLoopGroup包含一个或者多个EventLoop
- 一个EventLoop在其生命周期中国只和一个线程进行绑定
- 所有的EventLoop处理的IO事件都在其自身所绑定的线程中进行处理
- 一个Channel在其生命周期中只注册于一个EventLoop
- 一个EventLoop可能包含一个或多个Channel