回覆列表
  • 1 # 寫程式設計師的程式碼

    引起rabbitmq消費者中斷的情況會有很多,我把我專案中遇到的問題闡述一下吧。

    大資料模式下,一次性投遞10000條資料到傳送者,傳送者一次性把訊息傳送到消費者,然後消費者程式直接程序終端,檢視服務log,只發現send failed。

    closing AMQP connection <0.6265.7> (192.168.1.14:42592 -> 192.168.1.14:5672):

    {writer,send_failed,{error,timeout}}。

    RabbitMQ伺服器會在短時間內傳送大量的訊息給Consumer,然後,如果你沒有來得及Ack的話,那麼服務端會積壓大量的UnAcked訊息,而Consumer如果來不急處理也會處於假死(也可能引起程式崩潰)。

    消費者會過一段時間消失,這個時候就需要檢視mq日誌,一般情況下是連結斷開,mq的日誌中會記錄,針對這種情況要做重連。

    總結

    針對mq消費者出現問題有很多,要根據實際專案實際去解決。

  • 中秋節和大豐收的關聯?
  • 直升機三塊扇葉為什麼能產生那麼大的升力?