Transakční e-maily a SMS
Zprávy o registraci, potvrzení a obnově hesla zařazuje do fronty webová aplikace a odesílá je skupina workerů.
Fronty FIFO, které neztratí úlohy, když worker zemře, s producenty a konzumenty běžícími paralelně.
Kterákoli služba přidá práci, aniž by čekala na konzumenty.
Animovaný průvodce se skutečnými příkazy HotKV a ukázkovými odpověďmi. Kliknutím na kterýkoli krok na něj přeskočíte. Příkazy a odpovědi zůstávají anglicky, přesně tak, jak je v HotKV zadáváte a vidíte.
Práce na pozadí, například e-maily, změna velikosti obrázků a webhooky, potřebuje frontu mezi kódem, který ji vytváří, a kódem, který ji provádí. Fronta, která ztratí úlohu, když worker uprostřed úkolu spadne, je horší než žádná fronta, protože si nikdo nevšimne, že úloha zmizela.
Seznamy dávají jednoduchou frontu FIFO. BLMOVE přesune každou úlohu do seznamu zpracování ve chvíli, kdy je předána workeru, takže rozpracovaná úloha je vždy někde uložena, i když ten worker zmizí. Producenty a konzumenty obsluhují paralelní pracovní vlákna.
Kterákoli služba přidá práci, aniž by čekala na konzumenty.
LPUSH queue:emails "{\"to\":\"ada@example.com\",\"tpl\":\"welcome\"}"BLMOVE blokuje, dokud není úloha k dispozici, a pak ji jedním krokem přesune do seznamu zpracování.
BLMOVE queue:emails queue:emails:processing RIGHT LEFT 0E-mail odešel. Úloha se odstraní ze seznamu zpracování.
LREM queue:emails:processing 1 "{\"to\":\"ada@example.com\",\"tpl\":\"welcome\"}"Worker 2 zemře uprostřed úlohy. Jeho úloha je stále v seznamu zpracování, neztratila se.
LRANGE queue:emails:processing 0 -1Monitor přesune opuštěnou úlohu zpět do fronty a převezme ji jiný worker.
LMOVE queue:emails:processing queue:emails LEFT RIGHTZprávy o registraci, potvrzení a obnově hesla zařazuje do fronty webová aplikace a odesílá je skupina workerů.
Nahrané soubory se řadí do fronty pro náhledy a překódování a spadlý transkodér nikdy neztratí soubor.
Odchozí webhooky se řadí do fronty a opakují bez blokování požadavku, který je spustil.
LPUSH s BRPOP, přičemž workeři spí, dokud nepřijde práce.
LPUSHBRPOPBLMOVE předá každou úlohu atomicky do seznamu zpracování.
BLMOVELREMProducenty a konzumenty obsluhují paralelní pracovní vlákna.
Pro potvrzení, skupiny konzumentů a přehrávání použijte streamy.
XADDXREADGROUPPokud úlohy přebíráte pomocí BLMOVE, úloha zůstane v seznamu zpracování. Monitor může cokoli, co tam leží příliš dlouho, přesunout zpět do fronty.
Ne. BRPOP a BLMOVE blokují, dokud úloha nepřijde, s volitelným timeoutem.
Seznamy jsou nejjednodušší fronta. Streamy přidávají skupiny konzumentů, potvrzení každé zprávy a historii. Viz případ použití streamování událostí.
HotKV mluví protokolem Redisu, takže na něj můžete nasměrovat stávajícího klienta a spustit tytéž příkazy.