Logo GH

Operations and Ac.Management Production Scaling

תשתית מבצעית גדלים

1) מדוע ומה נחשב ל ”קנה מידה” ‏

Scaling היא יכולת המערכת של הפלטפורמה להגדיל את התפוקה (RPS/TPS, חיבורים, IOPS, הפצה) ואת נפח המידע מבלי לאבד SLO ובמחיר מבוקר. עבור iGaming/fintech, מדובר ישירות בכסף: הפקדה/הימור הימור, משחקים חיים והתנחלויות.

מטרות:
  • תשאירו את ה-SLOS ב-X-fold team growth ובשיאים עונתיים.
  • לספק זמן הגדלה צפוי (דקות, לא שעות).
  • שמור כלכלה: עלות/RPS, עלות/עסקה, עלות/1 k אירועים.

2) עקרונות פלטפורמה ניתנים לסילוק

1. אופקי-ראשון: חלוקה לשירותים קטנים, חסרי מדינה; מצב - באשכולות נתונים.
2. לחץ אחורי ותורים: התפרצויות החלקה, הגנה מפני ”סערות”.
3. מכסה על כל השכבות: לקוח/קצה/שירות/מסד נתונים.
4. אימפוטנציה ויכולת חזרה: נסיגות בטוחות, אאוטבוקס, dedup.
5. תלויות מוגבלות: פסקי זמן, מפסקים, בידוד מחיצה, מגבלות קצב.
6. יכולת תצפית לפי קיבולת אותות: ראש, p95/p99, לג, חיבורים, מכסות.
7. קנה מידה אוטומטי עם מעקות שמירה: HPA/VPA/Cluster Autoscaler + Stop press.
8. ריבוי אזורים לפי עיצוב: אזורי פיצוץ עצמאיים, מידע מקומי, מאהבים יציבים.

3) תכנון קיבולת: כיצד ”לחשב כמה אתה צריך” ‏

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

הערכות מהירות (חוק האגודל):
  • RPS * CPU/Pods: 'pods = RPS p99_time/effective _ CPU _ in _ Pod' (עם מרווח של 30-50%).
  • תורים: "מינימום _ מהירות _ של _ צרכנים _ שיא _ מהירות _ של _ יצרנים 1. 2`.
  • חיבורי DB: "max _ conns = active _ service _ pols _ medium _ pool _ size 1. 3`.
  • מטמון: גודל = ”hot-set in N דקות” + מרווח של 20-30%.
  • Egress/CDN: יציאת שיא = שיא מבקש גודל תגובה ממוצע (שקול דחיסה).

חדר הראש: 20-40% יעד בשיא (על ידי שכבה). מתחת ל-15%.

4) שכבות ותבניות מדדים

4. קצה 1/CDN/WAF

מטמון קצה (TTL + SWR), גיאו-שיווי משקל, דחיסה, HTTP/2/3.
דרג גבולות על ההיקף על ידי IP/JWT/key, הגנה על נחשול.
מאוורר אירועים (זכיינים, התראות חיות) באמצעות ברוקרים/פאב/ערוצי משנה.

4. 2 שער API Backend for-Frontend

סולם אופקי על ידי מדינאות, בריכות ייעודיות על ידי נחלים.
HPA על ידי מדדים עסקיים: RPS, p99, תור ביליארד עבודה - לא רק מעבד.

4. 3 תורים/זרימה של אסינכרוני (קפקא/ארנב/פולסר)

היקף על ידי מפלגות וצרכנים; הימנע (מפתחות והפצה).
התראות לאג + התאמה אוטומטית של הצרכנים; DLQ ולנסות מחדש נושאים.
שמירה תחת פיוס SLA והילוך חוזר.

4. 4 מטמונים (Redis/Memcashed)

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

4. 5 בסיסי נתונים

לקרוא העתקים וניתוב קריאה, איגום חיבור.
מחודד על ידי אזור/דייר/טווח מפתח.
CQRS: כותב למאסטר/מנהיג, קורא העתקים.
אינדקס וכתיבת מקבץ זורמים (outbox stream ac skip).
ארכיון ומידע חם/קר (טירינג).

4. 6 חנויות קבצים/אובייקטים

ריבוי ירידות, ריבוי הורדות, CDN-front, טרנספורמציות אסינכרוניות.
מכסות הספקים, ניקוי הזנב ותקציב היציאה.

4. 7 ספקים (PSP/KYC/Studios)

רב-ספק וציטוט/SLO/ניתוב עלויות.
מפסק מעגל + מגבלת קצב לכל ספק, תור מגש מחדש, ”grace modes”.

5) סימון אוטומטי ומעקות שמירה

קוברנטס:
  • HPA: = = = ”rps' rps _ per _ pode”, ”תור _ עומק”, ”p99 _ latency”; ”TradeFlightValue”.
  • VPA: הנחיות משאבים; עדכון מתוך שיא.
  • Cluster Autoscaler: ספוט + על דרישה פרופילים עם סדר עדיפויות.
  • הגדרות תקציב/טופולוגיה: אחידות על פני אזורים.
  • Range/LoughtQuate: הגנה מפני דלדול ”שיכור”.
HPA פסאודו מניפסט:

apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler spec:
scaleTargetRef: {apiVersion: apps/v1, kind: Deployment, name: api-gw}
minReplicas: 8 maxReplicas: 200 metrics:
- type: Pods pods:
metric:
name: rps_per_pod target:
type: AverageValue averageValue: "120"
- type: Pods pods:
metric:
name: p99_latency_ms target:
type: AverageValue averageValue: "280"
behavior:
scaleUp:
stabilizationWindowSeconds: 90 scaleDown:
stabilizationWindowSeconds: 300
מעקות בטיחות (דוגמאות):
  • ”Pause & Rollback”, אם עם כנרית p99> 1. 3 × קו בסיס 10 דקות.
  • ”להקפיא סולם מטה” בפריים טיים, בקנה מידה למעלה בלבד.
  • ”Stop reteries” ב- ”open _ circuit = 1” לצווארי בקבוק.

6) אזור מרובה: נכס/נכס ונכס/אחריות

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

נתונים:
  • שכפול מקומי (זרמים).
  • עסקאות קריטיות - עקביות לפי תחום (פנקס/מאזן).
  • ספרי השמעה: שינוי מקור צעד אחר צעד, TTL, מטמונים לחימום.
  • אימון רבעוני עם מטרות RTO/RPO.

7) דפוסי רשת ושירות

שירות MSH: mTLS, Restry/Breaker, Outlier Exchange, per-downstream limits.
EBPF/תצפית על L4/L7, גבולות חיבור, הגנה ראש של קו.
שערי API פנימיים עבור S2S, מגבלת קצב כללי וביקורת.
VPC/תת רשת על ידי אזורי פיצוץ, בקרת NAT/Egress, מציץ עם ספקים.

8) ביצועים: בדיקות והוכחות

טען & לחץ בפריים טיים + פרופיל המקרה הגרוע ביותר.
לטבול (ארוך) - זכרון/תיאור דולף, גידול איחור.
כאוס/ימי משחק: ברוקר/ספק/ירידה אזור, ”ספק איטי”.
סט של תרחישי התייחסות ושערים אוטומטיים.

מטריצת מיני-תרחיש:
תרחישתכליתסף
הפקדת TPS × 2תשלומי שיאp99 בלום 350ms, SR IM 99. 5%
שידור כל הקופהמאוורר מתגעגעחיבורי WS רשומים בגבולות 90%, ללא טיפות
האטה של KYCספק חיצוניתערובת אוטומטית + Feilover lood 2 min

9) נתונים ואחסון: אסטרטגיות צמיחה

צמיחה אנכית לתקרה = אופקית/חדה.
קרא העתק/מטמון. # אצווה/אסינכרון/יומן רשומות.
נדודים סכימה: הרחיבו פי נודד פי חוזה, אין מנעולים גלובליים.
צרור קר לאחסון זול + על פי דרישה מחדש התייבשות.
חיפוש: אינדקסים בודדים (OpenSearch/Solr) עם צינור עדכונים אינקרמנטלי.

10) ניהול ספקים ומכסות

כרטיס מכסה (TPS, חלונות, עלות); מתריע על השימוש _ ratio> 0. 9`.
ניתוב לפי עלות/איכות (ניתוב חכם).
הסכמי SLO ↔ ותהליך הגדלת המכסים.
בריכה של חלופות ו ”חם” מתג.

11) יכולת תצפית ואותות מדדים

מטריצות (מינימום):
  • קיבולת חדר הראש (באנגלית: cability headroom); ”תור _ lag/backlog growth”; ”kafka ISR”; ”db conflices ”/” redis lag”; ”open _ circuit ”/” retry _ rate”; ”quate _ usage”.
  • מדדים עסקיים: אחוזי הצלחה/המרת הפקדה, זמן התחלת המשחק.
  • עלות: עלות/RPS, עלות/1 k שיחות.
לוחות מחוונים:
  • סקירה קיבולת (חדר ראש, סיכונים עליונים, SLO שרפה קצב).
  • תזרים ותור פנל (lag/backlog, רווית צרכנים).
  • DB & Cache (p99, חיבורים, להיט/פינוי).
  • ספקים וציטוטים (TPS, פסקי זמן, עלות, החלפה).
  • שינוי בטיחות (טרום שחרור פוסט, קנרית, אוטוגטים).
התראות (רעיונות):

ALERT HeadroomLowAPI
IF capacity_headroom{layer="api"} < 0. 15 FOR 10m

ALERT KafkaBacklogAtRisk
IF (consumer_lag > 5e6 AND rate(consumer_lag[5m]) > 5e4) AND (hpa_desired == hpa_max) FOR 10m

ALERT DBConnectionsNearMax
IF active_conns / max_conns > 0. 85 FOR 5m

ALERT ProviderQuota90
IF usage_quota_ratio > 0. 9 FOR 5m

12) פינוקס: Scaling הוא רווחי

יחסי יעילות: עלות/RPS, עלות/הפקדה, אירועי עלות/1 k.
הערכה נכונה: VPA/המלצות, דו "חות מוגזמים.
נקודה/פתיח מראש ללא קריטי; שמור/מחויב לבזלואד.
תקציב יציאה והצטיידות, פריקת CDN/Edge.
אוסף וארכיון של יומנים לפי רמת הערך (חם נגד קר).
מכסות אזהרה (כובע רך) וכרטיסים אוטומטיים להארכה.

13) תהליכים ואנשים

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

14) בדיקת יישומים

מתחיל בסקאלה בסיסית (2-4 שבועות):
[ ] מפת הנתיבים והגבולות הקריטיים (על ידי שכבה), יעד חדר הראש 30%.
[ ] HPA על ידי Business Metrics + Cluster Autoscaler; אילוצי PDB/ .
[ תורים ] על שבילים חמים, מפתחות אידמפוטנטיות, תיבת יוצא.
[ ] Caches: מטרות להיט 90%, מדיניות פינוי, אינדקס מפתח.
[ ] DB: לקרוא העתקים, מאגר חיבור, תוכנית שארדינג.
[ ספקי ]: רב-ספקים, מכסות, מפסקים/נסיגות.
[ ] לוחות מחוונים ”קיבולת/זרם/DB/ספקים”, התראות מ-# 11.
[ ] הקנריים ואוטוגיות שלאחר השחרור.
[ ] ספר המהלכים של ד "ר ואימונים חלקיים.
לפני שיא גדול:
[ ] מחממת מטמונים, קדם קנה מידה HPA/ASG,
[ ] הגדל את מכסות הספקים, אפשר ניתוב חכם.
[ ] מאפשר הדחקות מצב לילה להתראות שאינן קריטיות.
[ ] תכונת ”מצב בטוח” מוכנה להפעלה מיידית.

15) אנטי דפוסים

שדרוג אנכי ”עצירה מלאה” במקום אופקי.
מאגר משותף של חוטים/חיבורים בכל הזרמים.
Retrai בפסקי זמן צוואר בקבוק, חוסר של סערת jitter #.
אין היסטרזיס בהתראות ומדיניות קנה מידה = ”ניסור”.
מסד נתונים גלובלי אחד ללא איתור נתונים ומיקום.
אמונה עיוורת במוכר SDK ללא פסק זמן/מגש/בקרת תצפית.
חוסר בתרגילי ד "ר: פיילובר" רק על הנייר ".

16) scalability KPI

ציות SLO בשיא (p95/p99, שיעור הצלחה).
ראש אחר שכבה בפריים טיים.
MTTS (זמן ממוצע לסולם) - עד משאבים נוספים זמינים.
זמן רזולוציית Backlog/Lag - הזמן התורים לקרוס לאחר השיא.
שינוי קצב כישלון לתקופה של צמיחה פעילה.
עלות/RPS וחיסכון ממטמון/CDN/Edge pootload.
RTO/RPO בפעילות גופנית.

17) דוגמאות של תבניות ”מהירות” ‏

קפקא: השתתפות ואוטוסקלה של צרכנים (רעיונות):

partitions(topic="bets") = ceil(peak_msgs_per_sec / target_msgs_per_partition)
consumers = min(partitions, max_pods); rebalance_on: skew > 1. 5x scale_up_if: lag > 5e5 && rate(lag[5m]) > 5e4
פוסט GreSQL:

max_connections = poolers pool_size 1. 3 read_routing: primary (write), replicas (read majority)
shard_key: tenant_id or region_id
רדיס:

maxmemory-policy: allkeys-lfu cluster-replicas: 1 evict-alert: rate(evictions[5m]) > 0 && used_mem/limit > 0. 8
מדיניות אוטוגייט קנרית (סיכום):

guardrails:
- metric: api_p99_ms, threshold: 1. 3 baseline_1d, window: 10m, action: pause_and_rollback
- metric: error_rate, threshold: 2 baseline_1d, window: 5m, action: pause max_step: 10%
step_interval: 15m

18) FAQ

קיו: מה לסקאלה קודם?
א. צווארי בקבוק לפי לוחות מחוונים: תורים/מטמונים/מסד נתונים כתוב. שבילים חמים (הפקדה/הימור/השקת משחק) הם בעדיפות עליונה.

קיו: איך להבין שקנה מידה אוטומטי ”מחמיר את המצב”?
א ": ראה הקורלציה: scaleup diamonds, ו ־ p99/שגיאות אינן משתפרות - אולי אתה" מגדיר את הבעיה "(לצמצם את מכסת הזרם). כולל מפסקים/השפלה.

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

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

Contact

צרו קשר

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

Telegram
@Gamble_GC
התחלת אינטגרציה

Email הוא חובה. Telegram או WhatsApp — אופציונליים.

השם שלכם לא חובה
Email לא חובה
נושא לא חובה
הודעה לא חובה
Telegram לא חובה
@
אם תציינו Telegram — נענה גם שם, בנוסף ל-Email.
WhatsApp לא חובה
פורמט: קידומת מדינה ומספר (לדוגמה, +972XXXXXXXXX).

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