我的笔记

2019-11-04  本文已影响0人  圆滚滚_8e70

今天我在学习<netty in action>这本书. 前俩天照着书本写了个客户端和服务端的demo. 留下了几个问题:
Q1:netty服务端怎么构建?
Q2:netty客户端怎么构建? 好像使用了Bootstrap
Q3:netty服务端是如何将数据发送回客户端的,是如何定位到客户端的具体地址,看了下代码,好像用了Socket进行了网络传输,至于怎么传输给客户端的,这个问题还没找到答案. 看看第三部分(netty的组件和设计)能不能找到我的答案.

netty网络抽象的组件:
Channel - 通道,类似Socket
EventLoop - 本质好像是个ScheduledExecutorService, Channel, EventLoop,Thread, EventLoopGroup的关系是:

注意:一个Channel所有的I/O操作都是由相同的Thread处理完成的,这种设计实际上消除了对于同步的需要(同一线程,不存在不一致问题).

ChannelFuture - 异步通知, netty里面所有的返回,都是异步的.通过addListener将结果通知给客户端.

执行应用程序处理逻辑的组件:
ChannelHandler - 应用程序处理业务逻辑
ChannelPipline - ChannelHandler责任链

引导类组件:

netty组件分类.png
上一篇下一篇

猜你喜欢

热点阅读