学习第27和28节
Netty断开连接过程主流程:

Netty关闭连接本质:
1 java.nio.channels.spi.AbstractInterruptibleChannel#close
2 java.nio.channels.SelectionKey#cancel
Netty关闭连接的关键点:
1 关闭连接,会触发 OP_READ 方法。读取字节数是 -1 代表关闭。
2 数据读取进行时,强行关闭,触发 IO Exception,进而执行关闭。
3 Channel 的关闭包含了 SelectionKey 的 cancel
Netty关闭服务的主流程:

Netty关闭服务的本质:

Netty关闭服务要点:
1 优雅(DEFAULT_SHUTDOWN_QUIET_PERIOD)
2 可控(DEFAULT_SHUTDOWN_TIMEOUT)
3 先不接活,后尽量干完手头的活(先关 boss 后关 worker:不是100%保证)
注:内容参考极客时间相关课程
本文深入探讨了Netty中断开连接的主流程,包括关闭连接的本质、关键点,如AbstractInterruptibleChannel#close和SelectionKey#cancel。同时阐述了Netty优雅关闭服务的策略,涉及DEFAULT_SHUTDOWN_QUIET_PERIOD和DEFAULT_SHUTDOWN_TIMEOUT,以及先关闭BOSS再关闭WORKER的顺序。
2636

被折叠的 条评论
为什么被折叠?



