flex-height
text-black

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

מהי ארכיטקטורה מונחית אירועים?

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

default

{}

default

{}

primary

default

{}

secondary

הגדרת ארכיטקטורה מונעת על-ידי אירוע ומדוע היא חשובה

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

כאן נכנסת ארכיטקטורה מונחית אירועים (EDA). במקום להמתין לעדכונים מתוזמנים או להסתמך על מערכות קשיחות, מחוברות בחוזקה, ארכיטקטורה מונחית אירועים מאפשרת ליישומים לתקשר באופן אסינכרוני באמצעות רכיבים מצומדים באופן רופף. המשמעות היא שכל חלק של המערכת יכול לפעול באופן עצמאי - בלי לדעת את העיסוקים הפנימיים של האחרים - מה שמקל על קנה המידה, להסתגל ולחדש.

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

מהו אירוע?

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

חברות הופכות מונעות אירועים כאשר הן יכולות ללכוד ולהגיב לאירועים כפי שהם מתרחשים, וזה כל הזמן. כמה דוגמאות לאירוע משותף כוללות:

רכיבי ליבה של ארכיטקטורה מונחית-אירועים

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

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

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

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

תקשורת סינכרונית לעומת אסינכרונית

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

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

מודלים מונעים על-ידי בקשה לעומת מודלים מונעי-אירועים בארכיטקטורה מונחית אירועים

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

במודל מונע על-ידי אירוע, אינטראקציה מתחילה באירוע - שינוי במצב או בפעולה שמפעילה עיבוד - והרכיבים מגיבים אוטומטית כאשר מתרחשים אירועים, לדוגמה, פרסום/הרשמה כמנוי. מודל זה הוא מבוסס דחיפה מבחינה אופיינית - כלומר המערכת שולחת אוטומטית ("דוחף") אירועים או עדכונים לצרכנים מיד עם התרחשותם, מבלי לחכות שהצרכן יבקש אותם. מודלים מונחי-אירועים הם אסינכרוניים, מופרדים ואידיאלים עבור תגובתיות בזמן אמת.

חשוב על ההבדלים המרכזיים בין המודלים כך: במודלים המונעים על-ידי בקשה, משתמשים מבקשים נתונים כאשר הם נדרשים; מודלים המונעים על-ידי אירועים מגיבים אוטומטית כאשר משהו קורה.

דפוסי ארכיטקטורה נפוצים מונחי-אירועים

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

קיימים ארבעה דפוסים עיקריים לשידור אירועים בארכיטקטורה מונחית-אירועים:

סגנונות עיבוד אירוע

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

1. עיבוד אירוע פשוט: צרכנים מעבדים כל אירוע כפי שהוא מתקבל. דוגמאות:

2. עיבוד אירועים מורכב: צרכנים מעבדים סדרה של אירועים כדי לאתר דפוסים ולבצע פעולות בהתבסס על התוצאה. דוגמאות:

3. עיבוד תזרים אירועים: צרכנים מעבדים ופועלים על תזרים קבוע של נתונים (נתונים בתנועה) בזמן אמת באמצעות פלטפורמת זרימת נתונים. דוגמאות:

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

כיצד פועלת ארכיטקטורה מונחית אירועים

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

הדברים הבאים מראים כיצד אדריכלות מונחית אירועים עובדת, שלב אחר שלב:

  1. מתרחש אירוע: מתרחש שינוי משמעותי במצב, כגון לקוח מציב הזמנה, חיישן מאתר התמרה בטמפרטורה או תשלום נכשל.
  2. מפיק האירוע פולט את האירוע: הבקשה בה התרחש האירוע פועלת כמפיקה ומפרסמת את האירוע לברוקר אירועים.
  3. ברוקר האירועים מנתב את האירוע: ברוקר האירועים פועל כמתווך לניהול ערוצי אירועים ומספק את האירוע לכל צרכני האירועים המעוניינים, מה שעוזר להבטיח תקשורת אמינה, ניתנת להרחבה ומופרדת.
  4. צרכני אירועים מגיבים לאירוע: יישומים או שירותים שנרשמים כמנוי לערוץ האירוע מעבדים את האירוע ונוקטים בפעולה מתאימה, כגון עדכון מלאי, שליחת דוא"ל אישור או הפעלת התראה.

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

מקרי שימוש ודוגמאות בעולם האמיתי

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

הדוגמאות הבאות מראות כיצד אדריכלות מונחית אירועים עובדת בפועל.

תעשיית המסעדות

  1. סטודנטית במכללה מציבה הזמנה לפיצה באמצעות אפליקציה לאספקת מזון. האפליקציה לוכדת את המידע הבסיסי שלו - שם, כתובת, מידע על תשלום והזמנה - ומפרסמת את אירוע "הזמנת הפיצה".
  2. מסעדת הפיצה נרשמת לאירוע, מממשת את ההזמנה ומפרסמת אירוע "מוכן להזמנה" משלה בחזרה לשירות אספקת המזון.
  3. לאחר מכן השירות מקצה נהג אספקה, מתזמן ETA ומתריע בפני הלקוח כי העוגה שלו בדרך.

מסחר אלקטרוני

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

דוגמאות נוספות לארכיטקטורה מונחית-אירועים כוללות:

טלמטריה של IoT

כלי ניתוח ובינת אירועים

אוטומציה

תנועות פיננסיות

שרשרת אספקה

מודרניזציה של IT והתפרקות מדור קודם

הודעות

מקרי שימוש כלליים בארכיטקטורה מונחי-אירועים כוללים:

יתרונות הארכיטקטורה המונעת על-ידי אירוע

ארגונים יכולים ליישם את היתרונות של ארכיטקטורה מונחית-אירועים על המערכות המודרניות שלהם. יתרונות הארכיטקטורה המובילים המונעים על-ידי אירוע כוללים:

  1. תגובתיות בזמן אמת ותהליכי עבודה חכמים: ארכיטקטורה מונחית-אירועים מאפשרת למערכות להגיב באופן מיידי לאירועים כפי שהם מתרחשים, מה שמפעיל תהליכי עבודה והחלטות אוטומטיים בזמן אמת. זה קריטי במיוחד בזמנים של ביקוש שיא - למשל, במהלך אירועי מכירות או חגים גדולים. ארגונים יכולים להחיל את ההיענות הזו על פעולות יומיומיות, לשפר הכול מאוטומציה של שרשרת אספקה ואיתור הונאות ועד למעורבות לקוח מותאמת אישית.
  2. מהירות ויעילות באמצעות תקשורת אסינכרונית: יישומים בארכיטקטורה מונחית-אירועים מתקשרים באופן אסינכרוני, כלומר יצרנים מפרסמים הודעות אירוע ללא המתנה לצרכנים שיקבלו אותן. גישה זו שאינה חוסמת משפרת את הביצועים, מפחיתה השהיה ומאפשרת למערכות לעבד נפחי אירועים מסיביים ללא צווארי בקבוק.
  3. גמישות ויכולת הרחבה באמצעות הפרדה וצימוד רופף: רכיבים בארכיטקטורה מונחית-אירועים מופרדים או צמודים באופן רופף, כך שהם פועלים באופן עצמאי מבלי להסתמך על הזמינות או הלוגיקה הפנימית של השני. זה מקל על עדכון, בדיקה ופריסה של שירותים בלי להפריע למערכת כולה. הפרדה גם מקלה על הוספת יצרנים וצרכנים נוספים לפי הצורך, ומאפשרת דירוג רציף ככל שצרכי העסק גדלים.
  4. חוסן ובידוד תקלות: עם שירותים מופרדים, כשלים ברכיב אחד לא מדרוג ברחבי המערכת. כל שירות יכול להיכשל באופן עצמאי, מה שהופך את הארכיטקטורה לעמידה וסובלנית יותר מאשר מודלים מסורתיים מוצמדים בחוזקה.
  5. שילוב מוכן לעתיד: צימוד רופף ועיצוב אסינכרוני הופכים ארכיטקטורה מונחית אירועים לאידיאלית עבור מודרניזציה של IT, הפרדת מערכות מדור קודם ופעולות מרובות עננים. ארגונים מקבלים את הגמישות לשלב טכנולוגיות חדשות - כגון אוטומציה מונחית-AI ובינת אירועים - ללא שכתוב מערכות ליבה.

אתגרים, מגבלות ותהליכים מייעלי עבודה

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

אתגרים

איך רשת אירועים מתאימה ב-

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

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

הגבלות ארכיטקטורה מונעות על-ידי אירוע

שיטות עבודה מומלצות לארכיטקטורה מונחית-אירוע

מאפיינים של ארכיטקטורה מונחית אירועים

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

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

שאלות נפוצות

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

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

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

מהם הרכיבים העיקריים של ארכיטקטורה מונחית אירועים?

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

  • מפיקים: יישומים שיוצרים או לוכדים אירועים - כגון עדכוני הזמנה, תשלומים וקריאות חיישנים - ומפרסמים אותם במערכת המונעת על-ידי אירוע
  • צרכנים: הירשם כמנוי לאירועים, עבד והגב לאירועים על-ידי הפעלת תהליכי עבודה, עדכון נתונים, שליחת הודעות או התחלת תהליכים במורד הזרם
  • עמילי אירועים: תוכנת ביניים להעברת הודעות המנתבת אירועים מיצרנים לצרכנים, ומספקת יכולות כגון אספקה אמינה, סינון, ניתוב דינמי, אחסון קבוע והפעלה מחדש
  • ערוצי אירועים: מסלולים סוכן האירועים מנהל המחבר בין היצרנים לצרכנים: היצרנים מפרסמים אירועים לערוץ, וצרכנים מנויים לערוצים הרלוונטיים להם
מהם דפוסי ארכיטקטורה נפוצים המונעים על-ידי אירוע?

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

  • פרסם/הירשם כמנוי (pub/sub): מפיקים אירועים לערוץ, ומספר צרכנים נרשמים ומגיבים אוטומטית.
  • הזרמת אירועים: מפיקים מפרסמים זרמים רציפים של אירועים לברוקר, והצרכנים יכולים לקרוא, להפעיל מחדש או לעבד את האירועים הללו בכל נקודה בזרם.
  • הפרדת אחריות של שאילתת פקודה (CQRS): פעולות קריאה וכתיבה מופרדות למודלים שונים כדי להפיץ עדכונים באופן אסינכרוני.
  • מיקור אירועים: מערכות מאחסנות כל שינוי במצב כאירוע שאינו ניתן לשינוי ביומן צירוף בלבד ולאחר מכן לבנות מחדש את המצב הנוכחי על-ידי הפעלה מחדש של אירועים.
מהם היתרונות בשימוש בארכיטקטורה מונחית אירועים?

היתרונות העיקריים של שימוש בארכיטקטורה המונעת על-ידי אירועים כוללים:

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