簡體   English   中英

如何在Celery中強制執行rate_limit?

[英]How is rate_limit enforced in Celery?

我正在運行一個Django網站,我使用Celery來實現預防性緩存 - 也就是說,即使在用戶請求之前,我也會計算和緩存結果。

但是,在某些情況下,我的一個Celery任務可能會被調用很多(實際上我說比平均完成的速度要快得多)。 我想對它進行速率限制,以便它實際上沒那么有用時不會消耗大量資源。

但是,我想首先了解如何強制執行Celery的celery.task.base.Task.rate_limit屬性。 任務被拒絕了嗎? 它們是否延遲並在以后執行?

提前致謝!

速率受限的任務永遠不會被丟棄,它們在工作者內部排隊,以便在允許它們運行時立即執行。

令牌桶算法沒有指定丟棄數據包的任何內容(這是一個選項,但Celery不這樣做)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM