Netty 传输Channel

Channel的接口层次结构

  • ChannelConfig:包含Channel的所有设置,支持热更新,特定的传输可能实现ChannelConfig的子类型
  • ChannelPipeline:拥有所有入站和出站的ChannelHandler实例。

Channel的重要方法 

多线程同时写Channel的例子

消息会按照写的顺序到达

 

 Netty内置的传输实现

名称描述
NIO io.netty.channel.socket.nio 使用 java.nio.channels 包作为基础——基于选择器的方式
Epoll io.netty.channel.epoll 由 JNI 驱动的 epoll()和非阻塞 IO。这个传输支持只有在Linux上可用的多种特性,如SO_REUSEPORT,比 NIO 传输更快,而且是完全非阻塞的
OIO io.netty.channel.socket.oio 使用 java.net 包作为基础——使用阻塞流
Local io.netty.channel.local 可以在 VM 内部通过管道进行通信的本地传输(服务端和客户端运行在同一个JVM上)
Embedded io.netty.channel.embedded Embedded 传输,允许使用 ChannelHandler 而又不需要一个真正的基于网络的传输。这在测试你的ChannelHandler 实现时非常有用

----

 
原文地址:https://www.cnblogs.com/fubinhnust/p/11940264.html