netty学习笔记

socket

channel可理解成简化版的socket
eventLoop用于处理连接的生命周期中所发生的事件【创建channel,就是创建一个连接,将连接注册到eventLoop事件循环组件里面,即将连接交给eventLoop来进行管理】
32

EventLoop

一个EventLoopGroup 包含一个或者多个EventLoop ;

一个EventLoop 在它的生命周期内只和一个Thread 绑定;

所有由EventLoop 处理的lo事件都将在它专有的Thread 上被处理;

一个Channel 在它的生命周期内只注册于一个EventLoop ;

一个EventLoop 可能会被分配给一个或多个Channel

注意,在这种设计中,一个给定Channel 的lO操作都是由相同的Thread 执行的,实际上消除了对于同步的需要。

ChannelFuture 接口

正如我们已经解释过的那样,Netty 中所有的O操作都是异步的。因为一个操作可能不会立即返回,所以我们需要一种用于在之后的某个时间点确定其结果的方法。为此,Netty 提供了ChannelFuture 接口,其addListener ()方法注册了一个ChannelFutureListener ,以便在某个操作完成时(无论是否成功)得到通知。

关于ChannelFuture 的更多讨论可以将ChannelFuture 看作是将来要执行的操作的结果的占位符它究竟什么时候被执行则可能取决于若干的因素,因此不可能准确地预测,但是可以肯定的是它将会被执行,此外,所有属于同一个Channel 的操作都被保证其将以它们被调用的顺序被执行【占位符:它占着一个位置,在将来这个位置一定有人来做。这就是ChannelFuture 】

Inbound and outbound 出站和入站

channelInboundhandler是channelhandler的子类,他是用来接受(装载)入栈事件和数据的

channelPipline是一个容器,他是用来容纳channelhandler链条的

SimpleChannelInboundhandler是用来接受解码消息的‘

引导

引导就是容器,它容纳的是网络的配置信息。如将进程和端口绑定,将进程和进程连接
客户端的bootstrap只有一个eventLoopGroup,服务端有两个

网络传输的的单位是字节

监听器回调机制

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值