Netty组件介绍(转)

伊夫ntLoopGroup会包蕴多少个伊夫ntLoop。

Bootstrap,一个Netty应用普通由二个Bootstrap发轫,它根本功效是布局一体Netty程序,串联起各类零部件。

为了更好的通晓和更为深刻Netty,大家先全部认识一下Netty用到的零件及它们在一切Netty架构中是怎么协调工作的。Netty应用中必要的机件:

ChannelPipeline,二个Netty应用基于ChannelPipeline机制,那种体制亟待借助于伊芙ntLoop和伊夫ntLoopGroup,因为它们多个都和事件可能事件处理相关。

Channel代表了三个Socket链接,或然其余和IO操作相关的零部件,它和伊夫ntLoop一起用来加入IO处理。

Future,在Netty中保有的IO操作都是异步的,因而,你不大概即时得知信息是不是被正确处理,不过大家可以过一会等它实施到位恐怕直接登记1个监听,具体的贯彻就是因而Future和ChannelFutures,他们得以注册一个监听,当操作实施成功或破产时监听会自动触发。可想而知,全体的操作都会回去一个ChannelFuture。

ChannelInboundHandler,三个最常用的Handler。这一个Handler的效率就是处理接收到数码时的风浪,约等于说,大家的事情逻辑一般就是写在那一个Handler里面的,ChannelInboundHandler就是用来拍卖大家的主导工作逻辑。

ChannelInitializer,当多个链接建立即,大家须求明白怎么来采取大概发送数据,当然,大家有丰硕多采的Handler完结来拍卖它,那么ChannelInitializer便是用来布署那些Handler,它会提供三个ChannelPipeline,并把Handler插足到ChannelPipeline。

Handler,为了协助各类协商和拍卖多少的格局,便出生了Handler组件。Handler首要用以处理种种风云,那里的事件很普遍,比如可以是接二连③ 、数据接收、相当、数据转换等。

  • Bootstrap or ServerBootstrap
  • EventLoop
  • EventLoopGroup
  • ChannelPipeline
  • Channel
  • Future or ChannelFuture
  • ChannelInitializer
  • ChannelHandler

http://www.tuicool.com/articles/mEJvYb

伊夫ntLoops的目的是为Channel处理IO操作,一个伊芙ntLoop可以为三个Channel服务。

相关文章