RabbitMQ-关闭空闲/悬空通道

 zhaoxiao2012_549 发布于 2023-01-08 10:29

我有一个多线程应用程序,它将传入消息发布到Rabbitmq交换。使用rabbitmq java客户端,我在应用程序启动时创建了一个rabbitmq连接,并在所有线程之间共享它。每个线程都会创建一个新通道(threadlocal),以便不按照rabbitmq文档的建议在多个线程之间共享通道。我正在使用netty,并且看到与netty通道管道线程创建的Rabbitmq通道数量相同。到目前为止,一切都很好。

但是,我的netty线程有2分钟的存活时间(我需要这个并且不能更改)。因此,如果线程空闲2分钟,它将死亡。但是,与线程关联的通道不会被杀死,并保持空闲状态,直到连接关闭。因此,我得到了越来越多的空闲通道列表,并且从未关闭过。在rabbitmq文档中没有看到任何有关悬空通道问题的信息。我有办法关闭闲置一段时间的频道吗?如果没有,解决此问题的最佳替代方法是什么?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有