Práci s poštou dělá worker — proces, který postupně prochází schránky, volá modely a píše koncepty. Stránka Provoz (provozovatel, Instalace → Provoz) ukazuje, jestli jich běží dost. Obnovuje se každých 30 sekund.
Co stránka ukazuje
Kapacita — verdikt jedním slovem:
| Verdikt | Co znamená | Co udělat |
|---|---|---|
| kapacita stačí | žádný asistent nezaostává za svým rytmem o víc než pět minut | nic |
| přidejte worker | některý asistent zaostává o víc než pět minut | zvednout souběžnost, nebo spustit další proces |
| žádný worker neběží | za poslední minutu se žádný worker neozval | docker compose ps a logy služby worker |
Workery — běžící procesy, jejich souběžnost, jaké poštovní systémy obsluhují, kterou schránku právě drží a kdy se naposledy ozvaly.
Zpožděné kontroly pošty — asistenti, kteří jsou po svém termínu déle než minutu (podle organizace a asistenta, nikdy podle adresy schránky).
Fronta úloh — kolik čeká, běží, a kolik jich za posledních 24 hodin doběhlo nebo selhalo. Chyby za 24 hodin — co se kde pokazilo.
Jak přidat výkon
- Nejdřív zvedněte souběžnost — v kartě Nastavení workerů pole „Kontrol pošty najednou na proces“ (1–50). Kontrola pošty je hlavně čekání na poštu a model, takže i malý kontejner unese víc než výchozí 3. Změnu si workery vezmou do několika sekund, bez restartu.
- Další proces na stejném stroji: do
.envnapište, kolik procesů má běžet celkem (WORKER_REPLICAS=2), a spusťtedocker compose up -d. Číslo v.envpřežije i aktualizaci;--scale worker=Nby platilo jen do příštíhodocker compose up. - Další stroj: klon repozitáře, stejný
.enva v němDATABASE_URLna sdílenou databázi (port 3306 službydbmusí být z toho stroje dostupný), pakdocker compose up -d --no-deps worker.
Nový worker se na stránce objeví do několika sekund. Workery si práci dělí přes databázi samy: každou schránku drží vždy jen jeden, takže se dvě kontroly nikdy nepotkají. Proces, který spadne, zdrží jen tu jednu schránku, dokud jeho zámek nevyprší.
V téže kartě nastavíte i výchozí interval kontrol pošty (60–86 400 s) pro asistenty bez vlastního intervalu.
Pokročilé
WORKER_PROVIDERS=google(seznamgraph,google) omezí proces jen na některé poštovní systémy — třeba aby pomalejší poskytovatel nezdržoval ostatní.WORKER_IDpojmenuje proces v logu (výchozí je hostname:pid).- Kontrola pošty, která nechala práci na později (limit za kontrolu, víc než 200 nových zpráv), zařadí asistenta hned znovu, takže zahlcená schránka se dožene po kolech.
O škálování rozhoduje člověk; draften sám žádné workery nespouští.