Netty-基础篇(3)

发布时间 2023-11-19 23:55:59作者: 轻寒

UNIX网络编程I/O模型

1.阻塞I/O模型(BIO,同步阻塞I/O)

2.非阻塞I/O模型(NIO,非阻塞I/O)

3.I/O复用模型

4.信号驱动I/O模型

5.异步I/O(AIO,事件驱动I/O)

传输

1.OIO-阻塞传输

2.NIO-异步传输

3.Local-JVM内部的异步通信

4.Embedded-测试你的ChannelHandler

Channel的生命周期

1.ChannelUnregistered(已经被创建,但还未注册到EventLoop)

2.ChannelRegistered(已经被注册到了EventLoop)

3.ChannelActive(处于活动状态:已经连接到它的远程节点。它现在可以接收和发送数据)

4.ChannelInactive(没有连接到远程节点)

资源泄露检测

class ResourceLeakDetector(它将对你应用程序的缓冲区分配大约1%的采样来检测内存泄漏,相关的开销是非常少的)

泄露检测级别

1.DISABLED-禁用泄露检测

2.SIMPLE-使用1%的默认采样率检测并报告任何发现的泄露

3.ADVANCED-使用默认的采样率,报告所发现的任何的泄露以及对应的消息被访问的位置

4.PARANOID-类似于ADVANCED,但是其将会对每次(对消息的)访问都进行采样。这对性能将会有很大的影响,应该只在调试阶段使用。