Alap adatkezelésHáttérfeladatok

Eseménystreamelés fogyasztói csoportokkal

Hozzáfűzéses eseménystreamek fogyasztói csoportokkal, visszaigazolásokkal és az összeomlott fogyasztó által hátrahagyott üzenetek automatikus helyreállításával.

hozzáfűzéses napló
Tartós
fogyasztói csoport streamenként
N
elveszett üzenet összeomláskor
0
Lépés 1 / 5
Esemény közzététele

A rendelésszolgáltatás hozzáfűz egy eseményt, és visszakapja az azonosítóját.

Példa munkamenetplaying
# Esemény közzététele
hotkv> XADD orders * type created order 1182 total 49.00
"1790985600123-0"

Animált bemutató valódi HotKV-parancsokkal és példa-válaszokkal. Kattintson bármelyik lépésre, hogy odaugorjon. A parancsok és a válaszok angolul maradnak, pontosan úgy, ahogy begépeli és látja őket a HotKV-ban.

A probléma

Az eseményekre reagáló szolgáltatásoknak többre van szükségük egy sornál. Több független fogyasztó ugyanazokat az eseményeket akarja, minden fogyasztói csoportnak meg kell osztania a munkát a példányok között, és amikor egy példány üzenetekkel a kezében meghal, valakinek észre kell vennie és át kell vennie őket.

Hogyan kezeli a HotKV

A stream hozzáfűzéses napló. Minden fogyasztói csoport függetlenül olvassa, minden üzenetet a csoport egy tagjának kézbesít, és függőben tartja, amíg a tag vissza nem igazolja. Az XAUTOCLAIM a túl régóta függő üzeneteket egy egészséges fogyasztónak adja át.

Lépésről lépésre

Mi történik, parancsról parancsra

  1. 01

    Esemény közzététele

    A rendelésszolgáltatás hozzáfűz egy eseményt, és visszakapja az azonosítóját.

    XADD orders * type created order 1182 total 49.00
  2. 02

    Két csoport, egy stream

    A számlázásnak és a szállításnak külön csoportja van, és mindegyik megkapja az eseményt.

    XGROUP CREATE orders billing 0 MKSTREAM
  3. 03

    Fogyasztás

    Egy számlázási példány a csoportja új üzeneteit olvassa, blokkolva, amíg valami meg nem érkezik.

    XREADGROUP GROUP billing billing-1 COUNT 10 BLOCK 5000 STREAMS orders >
  4. 04

    Visszaigazolás

    Amint a számla elkészült, a számlázás visszaigazol, és az üzenet elhagyja a függő listáját.

    XACK orders billing 1790985600123-0
  5. 05

    Helyreállítás összeomlás után

    Egy szállítási példány üzenetekkel a kezében meghalt. 60 másodpercnyi tétlenség után egy egészséges példány átveszi őket.

    XAUTOCLAIM orders shipping shipping-2 60000 0-0 COUNT 25
Hol használható

Valós helyzetek

Rendelési folyamatok

A rendelések a számlázáshoz, a szállításhoz és az analitikához áramlanak, mindegyik ugyanazt a streamet olvassa a saját tempójában.

Audit- és tevékenységi hírfolyamok

A felhasználói műveletek egy streamhez fűződnek hozzá, és bármely szolgáltatás újrajátszhatja őket, amely az előzményeket igényli.

IoT-adatbetöltés

Az eszközüzenetek streamekben pufferelődnek, és a terheléssel skálázódó munkavégzőcsoport dolgozza fel őket.

Beépítve

Amit kap

Hozzáfűzéses napló

A bejegyzések idő szerint rendezett azonosítót kapnak, és hossz vagy kor szerint vághatók.

XADDXTRIM

Fogyasztói csoportok

Minden csoport minden üzenetet megkap, és megosztja a munkát a tagjai között.

XGROUPXREADGROUP

Visszaigazolások

Az üzenetek visszaigazolásig függőben maradnak.

XACKXPENDING

Automatikus helyreállítás

A túl régóta tétlen üzeneteket egy másik fogyasztó átveszi.

XAUTOCLAIMXCLAIM

Gyakori kérdések

Újrajátszhatom a régi eseményeket?

Igen. Az XRANGE a stream bármely részét azonosító szerint olvassa, egy új fogyasztói csoport pedig az elejéről indulhat.

Hogyan akadályozom meg, hogy egy stream örökké nőjön?

Vágja az XTRIM-mel vagy az XADD MAXLEN vagy MINID kapcsolójával.

El tudja kerülni az XADD a duplikált eseményeket?

Az XADD támogatja az idempotens termelőazonosítókat (IDMP), így egy újrapróbált közzététel nem hoz létre második bejegyzést. Lásd az XADD referenciát.

Kapcsolódó felhasználási esetek

Próbálja ki a saját munkaterhelésén

A HotKV a Redis protokollt beszéli, így egy meglévő klienst ráirányíthat, és lefuttathatja ugyanezeket a parancsokat.