2012-12-19 142 views
15

由於某些原因,我嘗試使用Rabbitmq服務器,連接突然關閉,即使我傳遞了正確的用戶名和密碼。Rabbitmq服務器連接突然關閉

Rabbitmq服務器運行在端口5672上,並通過端口5672運行到我的服務器上,說它運行正常。

我已經安裝的RabbitMQ服務器的CentOS和我的RabbitMQ服務器日誌如下:

=INFO REPORT==== 19-Dec-2012::06:25:44 === 
accepted TCP connection on [::]:5672 from <host>:42048 

=INFO REPORT==== 19-Dec-2012::06:25:44 === 
starting TCP connection <0.357.0> from <host>:42048 

=WARNING REPORT==== 19-Dec-2012::06:25:44 === 
exception on TCP connection <0.357.0> from <host>:42048 
connection_closed_abruptly 

=INFO REPORT==== 19-Dec-2012::06:25:44 === 
closing TCP connection <0.357.0> from <host>:42048 

什麼可能是可能的原因要做到這一點。

感謝

+0

我正在編寫使用'pika.BlockingConnection'的python 2.6代碼,並且每次我調用'.close()'時,都會收到警告。我也注意到,因爲我把它作爲一個循環,它增加了它接下來監聽的端口號。我發現移動連接聲明並關閉循環減少了警告的數量,但並未真正解決潛在的問題,但我避免了日誌文件中的磁盤空間問題。我也嘗試了'.close()'與代碼和字符串有相同的錯誤。我也在CentOS 5.x上運行(想想我也遇到了與CentOS 6.x相同的問題) –

回答

12

connection_closed_abruptly意味着客戶端關閉,而無需通過適當的AMQP連接終止過程去TCP連接。

您的兔子服務器是否在負載均衡器後面?一旦連接啓動,連接突然關閉的常見原因是TCP負載平衡器的心跳。如果是這種情況,你應該定期看到這些信息,普遍接受的做法似乎是忽略它們。爲避免日誌文件堆積,您還可以考慮將日誌級別提升爲「錯誤」。另一方面,如果您的客戶端直接連接到rabbitmq服務器,這可能意味着您的客戶端不會以AMQP認可的方式關閉連接。您可以嘗試不同的客戶端以確認是否屬於這種情況。

順便說一句,telnet到你的服務器很可能會導致突然關閉。 :)

+2

對我來說,這是LBs每秒進行一次健康檢查。謝謝! – mfisch