ארכיטקטורת Microservice - קורס 46,900 רובל. ממרכז הדרכה IBS, הדרכה 24 שעות, תאריך 27 בנובמבר 2023.
Miscellanea / / November 27, 2023
ארכיטקטורת מיקרו-שירותים (MSA) זכתה יחסית לאחרונה לתהילה כגישה האדריכלית הפופולרית ביותר. השימוש בו מספק יתרונות רבים בשלבים שונים של מחזור חיי המוצר. בפרט, MCA מאפשר זמני תגובה מהירים יותר לדרישות עסקיות, מה שהופך אותו לרוב לעדיין על סגנונות אדריכליים אחרים.
עם זאת, בתהליך הפיתוח של מערכות MCA, האדריכל מתמודד עם אתגרים רבים, שרבים מהם גורמים למתחילים לחזור אחורה.
שגיאות פירוק עלולות להוביל לעלייה רצינית במורכבות הפיתוח. הביצועים נפגעים עקב חביון רשת בלתי עביר. אחסון נתונים מבוזר אינו מאפשר עקביות עסקה. מספר רב של רכיבים המקיימים אינטראקציה דרך הרשת מפחית את האמינות. קשה להבטיח ביטחון. בנוסף, בדיקה ותחזוקה של מערכת מבוזרת דורשת דיון נפרד.
קורס זה יראה את היתרונות והחסרונות של השימוש ב-MCA. יעזור לכם לקבל החלטה מושכלת לגבי תחולתה של ISA בהתאם לצרכי העסק וליכולות הצוות. הקורס בוחן את הנושאים העיקריים הקשורים ליישום ארכיטקטורת מיקרו-שירותים. אסטרטגיות, מנגנונים, דפוסים הפותרים את הבעיות שצוינו לעיל. עבור כל בעיה שנידון, יוצגו הכלים הנפוצים ביותר (כגון Kubernetes, Istio, Histryx, Kibana ועוד רבים אחרים).
תרגילים מעשיים יאפשרו לך לרכוש מיומנות של תכנון עצמאי של מערכות MCA.
נושאים מכוסים:
1. סגנונות אדריכליים (שעתיים)
מושגי מונולית, SOA, MSA.
השוואה ורציונל לבחירה.
2. דפוסי פירוק MSA (שעתיים)
גודל מיקרו-שירות אופטימלי;
פירוט השירותים לפי הזדמנות עסקית;
פירוט השירותים לפי אזורים בעייתיים;
שיטות עבודה להגדרת תחומי נושא;
פירוק לפי היבטים טכניים וארגוניים.
3. ארגון הפיתוח עבור MSA (שעה)
ארגון צוותים תחת MSA;
ארגון מאגר קודים תחת MSA.
4. אינטגרציה של שירותי מיקרו (3 שעות)
דפוסי אינטראקציה;
מנגנוני אינטראקציה סינכרוניים וא-סינכרוניים;
תזמור וכוריאוגרפיה;
פרוטוקולים וטכנולוגיות בסיסיות (REST, gRPC, GraphQL, Kafka, RabbitMQ וכו');
אינטראקציה עם מערכות חיצוניות (API Gateway, BFF);
מערכות ריאקטיביות;
ארכיטקטורות מונעות על ידי אירועים;
הפרדת פקודה ובקשה.
5. ארגון עבודה עם נתונים ב-MSA (3 שעות)
דפוסי עבודה עם נתונים;
הפקת אירועים;
נתוני התייחסות ב-MSA;
מקור יחיד של אמת (מקור האמת) ב-MSA.
6. תבניות ISA בסיסיות (9 שעות)
יכולת שינוי.
פתרון הבעיה של קישוריות גבוהה. גירסאות של ממשקים ואירועים. סוגי חוזים. שינויים במודל האירועים. דפוסי ארגון בקשות. מארז Microservice. רשת שירות.
מדרגיות.
תבניות לבניית מאזנים. שירותי איתור ודפוסים לעבודה איתם.
ביצועים.
דפוסי ביצועים ב-MSA (מוגזם, השפלה חיננית וכו').
עֲקֵבִיוּת.
בעיות עקביות ב-MSA. משפט CAP. פתרונות לבעיות עקביות. התחייבויות דו-שלביות. דפוס SAGA. רמת עקביות מופחתת.
מהימנות.
מנגנוני סובלנות תקלות. דפוסי מפסק מעגלים, מצערת, פסקי זמן תלויים וכו'.
בְּטִיחוּת.
מנגנוני אבטחה ב-MSA. אימות. הרשאה. הגנה היקפית. הגנה על ערוצי תקשורת. פרוטוקולים ודפוסים בסיסיים (OAUTH2, JWT, שומר סף, מפתח שירות וכו').
יכולת בדיקה.
בדיקת פירמידה ומרובעים. תכונות של בדיקת שירותי מיקרו.
בדיקת יחידה. בדיקת אינטגרציה. בדיקת רכיבים. בדיקת E2E. דפוסי בדיקת MSA.
קלות תחזוקה.
יכולת תצפית. דפוסי ניטור (מעקב מבוזר, צבירת יומנים). ניטור ורישום. הגדרת שירותי מיקרו. החצנה של התצורה. תמיכה במערכת.
7. פריסת שירותי מיקרו (שעתיים)
דפוס "צינור פריסה";
דפוסי פריסה;
שימוש בטכנולוגיות Docker ו- Kubernetes;
שימוש ברשת ISTIO;
פריסה ללא שרת;
אסטרטגיות פריסה (כחול-ירוק, כנרית וכו').
8. אסטרטגיות הגירה ממונוליט ל-MSA (שעתיים)
אסטרטגיות למעבר ממונוליט לשירותי מיקרו;
מונוליט חונק;
דפוסי חניקה;
תקשורת בין שירות מיקרו ומונוליט;
העברת מסדי נתונים.