首页

MQTT协议版本
MQTT 5 
MQTT 3.1.1 
MQTT 3.1 
MQTT-SN v1.2
Netty零拷贝体现在三个方面:
Direct Buffers
Composite Buffers
FileChannel.transferTo
使用直接缓冲区的风险
allocating many short-lived direct NIO buffers often causes an OutOfMemoryError.
MQTT 提供了遗嘱 Will 功能,可以在终端异常下线时,
向特定的 Will Topic 发送指定的 Will Message, 从而让第三方感知终端的异常下线。
Moquette是一个开源的MQTT消息代理,基于Java开发,并且使用Netty来实现MQTT协议。
它支持MQTT协议的3.1.1版本,适用于物联网(IoT)场景中的低带宽、高延迟或不可靠的网络环境。
Moquette的设计目标是轻量级和易于嵌入到其他项目中
大端字节序(Big Endian)是一种计算机存储多字节数据的方式,其中数据的高位字节存储在低地址内存中,而低位字节存储在高地址内存中。
在网络传输中,通常使用大端字节序,也称为网络字节序。
这是TCP/IP协议的规定,多字节数据在网络上传输时使用大端字节序。
因此,如果本地系统使用的是小端字节序,就需要在传输之前将其转换为大端字节序
AIO(Asynchronous I/O)  NIO2.0
AsynchronousServerSocketChannel
AsynchronousSocketChannel
CompletionHandler
netty放弃AIO的理由
Not faster than NIO (epoll) on unix systems (which is true),
NIO 和 AIO 在 unix 系统上使用的都是 epoll 模式,本质都是一样的
Netty舍弃AIO的支持,
https://github.com/netty/netty/issues/2515
Netty移除AIO的一个主要原因是在性能上AIO并没有比NIO高。
Linux虽然有一套原生的AIO实现,但Java AIO并没有采用,而是用epoll来模拟实现

第一页 上一页 下一页 最后一页