Wie rate-limit auf einem Sellerie-queue?
Ich gelesen das in Sellerie-Dokumentation :
Aufgabe.rate_limit
http://celery.readthedocs.org/en/latest/userguide/tasks.html#Task.rate_limit
Beachten Sie, dass dies ist eine pro-worker-Instanz limit und nicht ein global limit. Zur Durchsetzung einer globalen rate limit (z.B. für eine API mit einer maximalen Anzahl von Anfragen pro Sekunde), Sie müssen sich beschränken auf eine bestimmte Warteschlange.
Wie rate-limit auf Sellerie-Warteschlange?
Vielen Dank für die nicht nach unten Abstimmung ist die Frage.
- Sellerie docs waren sehr vage auf dieses 🙁
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stellt sich heraus, es kann nicht getan werden auf queue-Ebene für mehrere Mitarbeiter.
ES kann getan werden, Warteschlange Ebene für 1 Arbeiter. Oder auf queue-Ebene für jeden Arbeitnehmer.
Also, wenn u sagen wir 10 stellen/minute auf 5 Arbeitnehmer. Ihre Mitarbeiter werden Prozess, der bis zu 50 Arbeitsplätzen pro minute zusammengefasst.
So haben nur 10 jobs gleichzeitig ausführen Sie wählen, ob ein Arbeiter. Oder haben 5 Arbeiter mit einem limit 2/minute.
hey, ich bin auf der Suche nach einem Weg, das zu tun limit mit auf die Liste, und ich finde heraus, Sellerie kann das nicht tun, aber Sellerie ist kann die rate pro Aufgaben finden Sie in diesem:
http://docs.celeryproject.org/en/latest/userguide/workers.html#rate-limits
also für ein workaround, vielleicht können Sie festlegen, dass in einer der Aufgaben pro Warteschlange(was Sinn macht, in einer Vielzahl von Situationen), und setzen Sie die Grenze auf die Aufgabe.
Sie können dieses limit in der Blüte - > worker Bereich.
gibt es eine bestimmte leere Raum für die Eingabe Ihrer Grenze gibt.
Das format, das vorgeschlagen wird, verwendet werden, ist auch wie die unten: