celery使用的時候,由於任務時間過長,任務會重復執行


原因:

   由於celery任務有心跳機制,當任務時間過長(約超過5min),所以認定為鏈接不暢,重啟celery。同時因為沒有接收到ack信息,那么當celery重啟之后沒有接收到的任務在重傳機制下,會重復執行。

解決方法:

    1.禁止心跳(不推薦)
    2.在task任務過程中主動發送心跳

 

 

CELERY_BROKER_HEARTBEAT = 0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM