rocketmq 使用netty,中止时报错

线上项目发布时,发现tomcat出现如图所示日志,因而想找到出现这个日志的缘由。git

 

  1. 经过google搜索日志内容,发现相关的结果不多,其中有两个比较靠谱
    1)https://github.com/netty/netty/issues/2084
    2)https://github.com/relayrides/pushy/issues/29
  2. 经过以上两个帖子,初步分析缘由:项目依赖了rocketmq,rockmq依赖了netty,tomcat中止时,因为mq的event executor因为是异步销毁的,因此出现了第一个图中的日志。若是须要消除日志,能够在销毁时延时1秒来解决。
    日志中的报错能够忽略,不会有影响。

     
  3. 消除报错日志测试
    在项目中重写了rocketmq的类NettyRemotingClient,在shutdown方法的最后加上sleep 1s作测试,中止tomcat,发现原来存在的报错不见了。

        

相关文章
相关标签/搜索