Çekirdek veriArka plan işleri

Tüketici Gruplarıyla Olay Akışı

Tüketici grupları, onaylar ve çöken bir tüketicinin geride bıraktığı iletilerin otomatik kurtarılmasıyla yalnızca eklemeli olay akışları.

yalnızca eklemeli günlük
Kalıcı
akış başına tüketici grubu
N
çökmede kaybolan ileti
0
Adım 1 / 5
Bir olay yayımlayın

Sipariş servisi bir olay ekler ve kimliğini geri alır.

Örnek oturumplaying
# Bir olay yayımlayın
hotkv> XADD orders * type created order 1182 total 49.00
"1790985600123-0"

Gerçek HotKV komutları ve örnek yanıtlarla animasyonlu bir anlatım. Herhangi bir adıma atlamak için üzerine tıklayın. Komutlar ve yanıtlar, HotKV'de yazdığınız ve gördüğünüz haliyle İngilizce kalır.

Sorun

Olaylara tepki veren servisler bir kuyruktan fazlasına ihtiyaç duyar. Birkaç bağımsız tüketici aynı olayları ister, her tüketici grubunun işi örnekler arasında paylaşması gerekir ve bir örnek ellerinde iletilerle öldüğünde birinin bunu fark edip onları devralması gerekir.

HotKV bunu nasıl ele alır

Bir akış, yalnızca eklemeli bir günlüktür. Her tüketici grubu onu bağımsız okur, her iletiyi grubun bir üyesine teslim eder ve üye onaylayana kadar beklemede tutar. XAUTOCLAIM çok uzun süredir beklemede olan iletileri sağlıklı bir tüketiciye devreder.

Adım adım

Ne olur, komut komut

  1. 01

    Bir olay yayımlayın

    Sipariş servisi bir olay ekler ve kimliğini geri alır.

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

    İki grup, tek akış

    Faturalandırma ve gönderimin her birinin kendi grubu vardır ve her biri olayı alır.

    XGROUP CREATE orders billing 0 MKSTREAM
  3. 03

    Tüketin

    Bir faturalandırma örneği grubu için yeni iletileri okur, bir şey gelene kadar bekler.

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

    Onaylayın

    Fatura oluşturulduğunda faturalandırma onaylar ve ileti bekleyenler listesinden çıkar.

    XACK orders billing 1790985600123-0
  5. 05

    Bir çökmeden kurtarın

    Bir gönderim örneği elinde iletilerle öldü. 60 saniye boşta kaldıktan sonra sağlıklı biri tarafından üstlenilirler.

    XAUTOCLAIM orders shipping shipping-2 60000 0-0 COUNT 25
Nereye uyar

Gerçek dünya senaryoları

Sipariş işlem hatları

Siparişler faturalandırmaya, gönderime ve analitiğe akar; her biri aynı akışı kendi hızında okur.

Denetim ve etkinlik akışları

Kullanıcı eylemleri bir akışa eklenir ve geçmişe ihtiyaç duyan her servis tarafından yeniden oynatılır.

IoT alımı

Cihaz iletileri akışlarda arabelleğe alınır ve yükle ölçeklenen bir çalışan grubu tarafından işlenir.

Yerleşik

Neler elde edersiniz

Yalnızca eklemeli günlük

Girdiler zamana göre sıralı kimlikler alır ve uzunluğa veya yaşa göre kırpılabilir.

XADDXTRIM

Tüketici grupları

Her grup her iletiyi alır ve işi üyeleri arasında paylaşır.

XGROUPXREADGROUP

Onaylar

İletiler onaylanana kadar beklemede kalır.

XACKXPENDING

Otomatik kurtarma

Çok uzun süre boşta kalan iletiler başka bir tüketici tarafından üstlenilir.

XAUTOCLAIMXCLAIM

Sık sorulan sorular

Eski olayları yeniden oynatabilir miyim?

Evet. XRANGE akışın herhangi bir bölümünü kimliğe göre okur ve yeni bir tüketici grubu baştan başlayabilir.

Bir akışın sonsuza dek büyümesini nasıl önlerim?

XTRIM ile ya da XADD'in MAXLEN veya MINID seçeneğiyle kırpın.

XADD yinelenen olayları önleyebilir mi?

XADD, yeniden denenen bir yayımın ikinci bir girdi oluşturmaması için eş güçlü üretici kimliklerini (IDMP) destekler. XADD başvurusuna bakın.

İlgili kullanım senaryoları

Kendi iş yükünüzde deneyin

HotKV, Redis protokolünü konuşur; bu yüzden mevcut bir istemciyi ona yönlendirip aynı komutları çalıştırabilirsiniz.