Netty学习之数据传输

2018-10-10  本文已影响52人  颜洛滨

Netty学习之数据传输

前言

在前面的小节中,我们简略地学习了Netty及Netty的核心组件,在本小节中,我们来学习一个重要但是不太好归类的内容,Netty的数据传输方式。

数据传输

在Netty中,Channel可以说是非常重要的一个组件了,数据之间的传递正是通过Channel来完成的。

在Netty中,Channel是线程安全的,所以一个Channel可以被其他线程引用,也可以在多线程环境下使用。

在Netty中,支持不同类型的传输方式,它们支持的协议不同,所以使用的时候需要选择合适的类型

零拷贝,零拷贝是一种只能在NIO和Epoll传输方式中使用的特性,允许开发者快速地,高效地将数据从文件系统移动到网络接口,而不需要将其从内核空间拷贝至用户空间,能够极大地提高如FTP、HTTP等的效率,但是并不是所有的OS都支持,而且不能在加密的文件系统中使用,当然,传输加密了的数据块还是可以的。

总结

本小节的内容比较简单,主要是Netty的不同类型的数据传输方式,由于不同的OS对不同的传输方式支持程度不同,所以在使用的时候,需要根据情况选择,如果是Linux环境,并且内核支持Epoll,最佳的选择就是Epoll啦。

上一篇下一篇

猜你喜欢

热点阅读