nextdiscover
V2EX  ›  Java

netty 里的 channelInactive 被触发一定是和服务器断开了吗

  •  
  •   nextdiscover · Nov 10, 2018 · 17206 views
    This topic created in 2918 days ago, the information mentioned may be changed or developed.

    netty 里的 channelInactive 被触发一定是和服务器断开了吗, 发送完数据 channelInactive 经常被触发,不知道什么原因

    4 replies  •  2023-03-07 09:25:07 +08:00
    1194129822
    1194129822
    Nov 10, 2018 via Android
    1
    是的,这有两种可能,一种服务端主动 close,还有客户端 colse,你的 handler 里重写捕获异常了吗,如果没有捕获异常,则操作此 channel 的任何异常都会关闭此 channel
    linbiaye
    linbiaye
    Nov 10, 2018
    2
    触发了一定是连接不再可用了。如果是走公网,连接被中间设备(主要是 NAT 设备)掐断很正常,想要看为什么就 2 边抓包。
    ppyybb
    ppyybb
    Nov 11, 2018 via iPhone
    3
    抓包看下吧,主动和被动 close 都有可能
    要不然就自己打 log 调试一下
    记得看下异常
    bookc
    bookc
    Mar 7, 2023
    4
    @linbiaye 五年后看到这个回复,让我定位到了我的问题
    果真是中间设备的问题
    我用的是 nginx 转发 MQTT ,nginx 设置了一些配置导致不断的断开重连
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1906 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 08:33 · PVG 16:33 · LAX 00:33 · JFK 03:33
    ♥ Do have faith in what you're doing.