我正在使用带有自动恢复的java api客户端,但每次丢失连接时,当它重新连接时,它会在不同的端口上创建一个新连接,使我的RabbitMQ充满多个连接。我正在处理的环境失去了连接频繁。
尝试重新连接时是否可以使用相同的连接?
提前致谢
答案 0 :(得分:0)
我想你想要的是connection pool
与RabbitMQ建立连接。由于您使用的是java-client,因此您可以尝试使用支持通道缓存的 CachingConnectionFactory (默认情况下)以及连接缓存(需要额外设置)。您可以在此处查看:CachingConnectionFactory
答案 1 :(得分:0)
您还可以通过heartbeat
的帮助删除空闲连接在您的Java客户端中启用它
ConnectionFactory cf = new ConnectionFactory();
cf.setRequestedHeartbeat(60);
它也可以在服务器的配置中进行硬编码
或者您可以参考Connection AutoRecovering