נתוני ליבהעבודת רקע

הזרמת אירועים עם קבוצות צרכנים

זרמי אירועים להוספה בלבד עם קבוצות צרכנים, אישורי קבלה והתאוששות אוטומטית מהודעות שצרכן שקרס השאיר מאחור.

יומן להוספה בלבד
עמיד
קבוצות צרכנים לכל זרם
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, ולכן אפשר להפנות אליו לקוח קיים ולהריץ את אותן פקודות.