AMQP NodeJS连接

时间:2017-02-18 07:37:57

标签: node.js rabbitmq amqp

我有一个将使用RabbitMQ的Node应用程序,我正在使用amqplib来访问它。我知道与RabbitMQ的TCP / IP连接和昂贵的通道很便宜,因此创建一个连接然后创建多个通道。

我有点困惑的是我如何评价可以在整个应用程序中使用的那个连接?大多数教程似乎表明连接是为了某个目的而打开,然后再次关闭,只是在下次需要时再次打开。

如果多个用户尝试同时访问RabbitMQ的操作,我认为这会导致多个连接。

1 个答案:

答案 0 :(得分:0)

我认为您的用户只连接到您的服务器,而每个用户都直接连接到rabbitmq。然后,在服务器端,您只能保持与rabbitmq的一个连接。

为此,我建议您创建一个module来跟踪您的应用程序之间的连接。

请注意,AMQP具有heartbeat功能:

  

AMQP 0-9-1提供心跳功能,以确保应用程序层及时发现中断的连接(以及完全无响应的对等体)。 Heartbeats还可以防御某些可能终止"空闲的网络设备。 TCP连接。

默认情况下,amqplib's hearbeat设置为0表示没有心跳。