错误:使用node-amqp读取一段时间后发生的ETIMEOUT

时间:2015-10-22 16:24:54

标签: node.js rabbitmq ubuntu-14.04 amqp node-amqp

我有一个运行RabbitMQ实例的虚拟机,以及一个带有节点进程的独立虚拟机,它会消耗队列中的内容。

经过一段时间不活动后,我的Node进程将退出并显示错误。我一直保持Node进程活着,但这是错误的样子:

data:    server.js:18171 - error: Script restart attempt #33
data:    server.js:18171 -  [rabbitmq] Waiting for messages in savvy_shipping_to_logic. To exit press CTRL+C
data:    server.js:18171 - Error: read ETIMEDOUT
data:    server.js:18171 -     at errnoException (net.js:901:11)
data:    server.js:18171 -     at TCP.onread (net.js:556:19)
data:    server.js:18171 - error: Forever detected script exited with code: 8
data:    server.js:18171 - error: Script restart attempt #34
data:    server.js:18171 -  [rabbitmq] Waiting for messages in savvy_shipping_to_logic. To exit press CTRL+C
data:    server.js:18171 - Error: read ETIMEDOUT
data:    server.js:18171 -     at errnoException (net.js:901:11)
data:    server.js:18171 -     at TCP.onread (net.js:556:19)
data:    server.js:18171 - error: Forever detected script exited with code: 8
data:    server.js:18171 - error: Script restart attempt #35

两个虚拟机都是在Azure上运行的Ubuntu 14.04。我应该注意到,我在运行El Cap的Macbook Pro上没有遇到同样的问题。我觉得我错过了一些旗帜?

我正在加入amqp://my.example.com

1 个答案:

答案 0 :(得分:0)

您可能需要在连接设置中设置心跳以保持连接活动。例如,尝试添加30秒的心跳,看看是否有帮助。

您可能还想增加连接超时。