我正在使用RabbitMQ java客户端。 我的应用程序有多个交换和队列。采用类似于Pub / Sub模型的东西。
关于连接的最佳做法是什么? 我应该为每个应用程序建立一个连接吗?
我理解通道模型和线程(un)安全模型。只是不确定我是否应该有多个连接。
答案 0 :(得分:4)
每个应用的一个连接是正确的。
在这种联系中,你将拥有许多渠道 - 实际工作已完成。
您可以在一个连接中拥有数百或数千个消息生成者和消费者(每个消息生成者和消费者都在其通道上)。
如果您开始看到RMQ设置放慢,因为您需要做太多工作,请查看群集RMQ和/或站起来应用的多个实例。
但是你仍然会为每个应用实例保持1个连接。
答案 1 :(得分:1)
这取决于您将拥有的消息量。如果它真的很大,可能有2或3个连接可以做到,但每个应用程序一个似乎是最好的选择