البيانات الأساسيةالمهام الخلفية

تدفق الأحداث

تدفقات أحداث للإلحاق فقط مع مجموعات مستهلكين وإقرارات واستعادة تلقائية للرسائل التي تركها مستهلك متعطل.

سجل للإلحاق فقط
دائم
مجموعات مستهلكين لكل تدفق
N
رسائل تُفقد عند التعطل
0
الخطوة 1 من 5
انشر حدثًا

تُلحق خدمة الطلبات حدثًا وتستعيد معرّفه.

جلسة توضيحيةplaying
# انشر حدثًا
hotkv> XADD orders * type created order 1182 total 49.00
"1790985600123-0"

عرض متحرك بأوامر HotKV حقيقية وردود توضيحية. انقر على أي خطوة للانتقال إليها. تبقى الأوامر والردود بالإنجليزية، تمامًا كما تكتبها وتراها في HotKV.

المشكلة

تحتاج الخدمات التي تتفاعل مع الأحداث إلى أكثر من قائمة انتظار. فعدة مستهلكين مستقلين يريدون الأحداث نفسها، وكل مجموعة مستهلكين تحتاج إلى تقاسم العمل بين النسخ، وعندما تتوقف نسخة وفي يدها رسائل، يجب أن يلاحظ أحد ذلك ويتولاها.

كيف يتعامل HotKV معها

التدفق سجل للإلحاق فقط. تقرؤه كل مجموعة مستهلكين باستقلالية، وتسلّم كل رسالة إلى عضو واحد في المجموعة، وتبقيها معلّقة حتى يقرّ بها العضو. ويسلّم XAUTOCLAIM الرسائل التي بقيت معلّقة طويلًا إلى مستهلك سليم.

خطوة بخطوة

ما يحدث، أمرًا بأمر

  1. 01

    انشر حدثًا

    تُلحق خدمة الطلبات حدثًا وتستعيد معرّفه.

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

    مجموعتان وتدفق واحد

    لكل من الفوترة والشحن مجموعته الخاصة، وتتلقى كل منهما الحدث.

    XGROUP CREATE orders billing 0 MKSTREAM
  3. 03

    استهلك

    تقرأ نسخة من الفوترة الرسائل الجديدة لمجموعتها، وتنتظر حتى يصل شيء.

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

    أقرّ

    بعد إنشاء الفاتورة، تقرّ الفوترة بالرسالة فتخرج من قائمة المعلّقات.

    XACK orders billing 1790985600123-0
  5. 05

    تعافَ من التعطل

    توقفت نسخة من الشحن وفي يدها رسائل. وبعد 60 ثانية من الخمول تطالب بها نسخة سليمة.

    XAUTOCLAIM orders shipping shipping-2 60000 0-0 COUNT 25
أين يناسب

سيناريوهات من الواقع

خطوط معالجة الطلبات

تتدفق الطلبات إلى الفوترة والشحن والتحليلات، وكل منها يقرأ التدفق نفسه بوتيرته الخاصة.

سجلات التدقيق والنشاط

تُلحق إجراءات المستخدمين بتدفق، وتعيد تشغيلها أي خدمة تحتاج إلى السجل.

استيعاب بيانات IoT

تُخزَّن رسائل الأجهزة مؤقتًا في تدفقات وتعالجها مجموعة من العمال تتوسع مع الحمل.

مدمج

ما تحصل عليه

سجل للإلحاق فقط

تحصل الإدخالات على معرّفات مرتبة زمنيًا، ويمكن تقليمها حسب الطول أو العمر.

XADDXTRIM

مجموعات المستهلكين

تحصل كل مجموعة على كل رسالة، وتتقاسم العمل بين أعضائها.

XGROUPXREADGROUP

الإقرارات

تبقى الرسائل معلّقة حتى يُقَرّ بها.

XACKXPENDING

استعادة تلقائية

الرسائل الخاملة طويلًا يطالب بها مستهلك آخر.

XAUTOCLAIMXCLAIM

أسئلة شائعة

هل يمكنني إعادة تشغيل الأحداث القديمة؟

نعم. يقرأ XRANGE أي جزء من التدفق حسب المعرّف، ويمكن لمجموعة مستهلكين جديدة أن تبدأ من البداية.

كيف أمنع التدفق من النمو إلى الأبد؟

قلّمه باستخدام XTRIM أو بخيار MAXLEN أو MINID في XADD.

هل يستطيع XADD تجنب الأحداث المكررة؟

يدعم XADD معرّفات المنتج المتكافئة (IDMP)، فلا تنشئ إعادة محاولة النشر إدخالًا ثانيًا. راجع مرجع XADD.

حالات استخدام ذات صلة

جرّبه على عبء عملك

يتحدث HotKV بروتوكول Redis، لذا يمكنك توجيه عميل موجود إليه وتشغيل هذه الأوامر نفسها.