多通道协议,在TCP三次握手后,协议双方会“私下”协商一个或多个通道,用于传输信令或数据。例如:FTP、H.323、Netty。
Netty的主要目的是基于NIO构建具有网络和业务逻辑组件的分离和松耦合的高性能协议服务器。它可以实现多种协议,例如HTTP或自己的特定协议。
Netty有一系列丰富的特性:有一套统一的API来处理异步和同步编程模式;使用非常灵活;简单但却强大的线程机制;业务组件分离方便重用;极小的缩减不必要的Memory Copy。
扩展资料netty核心组件
1、Channel
Channel是Java NIO的基础。表示一个开放的连接,能够执行IO操作,例如读取和写入。简单的说,Channel 就是代表连接,实体之间的连接,程序之间的连接,文件之间的连接,设备之间的连接。同时也是数据入站和出站的载体。
2、Future
Netty 通道中的每个IO操作都是非阻塞的。这意味着调用后立即返回所有操作。标准Java库中有一个Future接口,但是对于Netty而言并不方便-我们只能向Future询问操作的完成情况,或在操作完成之前阻塞当前线程。这就是Netty拥有自己的ChannelFuture接口的原因。可以将回调传递给ChannelFuture,该回调将在操作完成时被调用。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)