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

עומס העבודה שלכם מתאפיין בפרצים — משימות קידוד וידאו שקופצות כשתוכן מועלה, ריצות אימון ML שדורשות 8 GPUs למשך 4 שעות ואז כלום, משימות הסקת אצווה המופעלות על ידי אירועים עסקיים, או צינורות רינדור שרצים במהלך הלילה. אתם נמצאים במצב של הקצאת יתר (משלמים על משאבים לא פעילים 80% מהזמן) או הקצאת חסר (משימות ממתינות בתור שעות במהלך שיאים). אתם זקוקים לארכיטקטורה שמספקת בדיוק את משאבי המחשוב שאתם צריכים, כשאתם צריכים אותם, ומשחררת אותם כשהמשימה מסתיימת — ללא קנס ה-cold-start שהופך את "scale to zero" ללא מעשי עבור עומסי עבודה של GPU.
Explore more design patterns and system architectures
אדריכלים שלנו יכולים לעזור לך לעצב ולבנות מערכות תוך שימוש בדפוס זה לדרישות הספציפיות שלך.
צרו קשרארכיטקטורת סקיילינג On-Off מנהלת משאבי מחשוב באמצעות מאגר חם/קר (warm/cold pooling), הקצאה מונחית-תור משימות, ופירוק אוטומטי. מאגר חם (warm pool) שומר על מספר קטן של מופעים מאותחלים מראש ומוכנים לשימוש מיידי. מאגר קר (cold pool) מקצה קיבולת נוספת ממופעי spot/preemptible כאשר הביקוש עולה על המאגר החם. מתאם משימות (job orchestrator) מנתב עבודה למופעים זמינים, מנטר התקדמות, מטפל בניסיונות חוזרים בעת פינוי spot, ומפעיל scale-down כאשר התור מתרוקן. התבנית קריטית במיוחד עבור עומסי עבודה של GPU שבהם אתחול קר (משיכת קונטיינר + טעינת מודל) יכול לארוך 3-10 דקות.
המערכת מתרכזת סביב תור משימות (job queue) (SQS, Redis, או מותאם אישית) החוצץ בקשות עבודה נכנסות. בקר סקיילינג (scaling controller) מנטר את עומק התור ומקצה מופעים מהמאגר החם תחילה, ולאחר מכן מהמאגר הקר (מופעי spot). כל מופע עובד (worker instance) מושך משימות מהתור, מבצע את עומס העבודה (קידוד, אימון, הסקה), מדווח על השלמה, וחוזר למאגר או מסיים פעולה. מנהל נקודות ביקורת (checkpoint manager) מטפל בפינוי spot על ידי שמירת מצב ביניים ל-S3, ומאפשר למשימות להתחדש במופע אחר מבלי להתחיל מחדש.
| שכבה | טכנולוגיות |
|---|---|
| מחשוב | AWS EC2 Spot (G5/P4), GCP Preemptible (A2/L4), RunPod Serverless, Modal |
| תיאום | Kubernetes (Karpenter for autoscaling), AWS Batch, custom job orchestrator |
| תור משימות | AWS SQS, BullMQ (Redis), Temporal, Celery |
| אחסון | S3 (checkpoints, model artifacts), NVMe (model cache), EFS (shared workspace) |
| ניטור | CloudWatch/Prometheus (queue depth, instance utilization, job latency), custom cost dashboards |
| השתמשו כאשר | הימנעו כאשר |
|---|---|
| עומס העבודה פרצי — ביקוש שיא הוא פי 5+ מהביקוש הממוצע | התעבורה יציבה וצפויה — מופעים שמורים בגודל נכון זולים יותר |
| משימות GPU/מחשוב עתיר משאבים שהן יקרות כשהן לא פעילות | עומס העבודה הוא עיבוד CPU קל משקל שמתאים ל-serverless (Lambda) |
| משימות יכולות לסבול cold start של 1-5 דקות עבור הקצאת מאגר קר | נדרש חביון הפעלת משימה בתת-שנייה — אתם צריכים תשתית תמיד פעילה |
| אופטימיזציית עלויות היא דאגה מרכזית ותמחור spot מציע חיסכון של 60-90% | הפרעת spot תגרום לאובדן נתונים ששמירת נקודות ביקורת לא יכולה למנוע |
MW מתכננת סקיילינג On-Off דרך עדשת "עלות למשימה" — אנו ממדלים את העלות הכוללת של עיבוד יחידת עבודה אחת (וידאו אחד, ריצת אימון אחת, הסקת אצווה אחת) על פני אסטרטגיות סקיילינג שונות ובוחרים בזו שממזערת עלויות בחביון ה-SLA הנדרש. היישומים שלנו כוללים לוחות מחוונים של עלויות בזמן אמת המציגים עלות למשימה, ניצול תשתית וחיסכון ב-spot. בנינו תשתית GPU ב-On-Off שהפחיתה את עלויות עיבוד הווידאו ב-70% בהשוואה למופעים שמורים, ואשכולות אימון ML שמקצים 64 GPUs לריצת אימון של 4 שעות ומשחררים אותם אוטומטית.
אבטחה אינה תכונה שמוסיפים לאחר ההשקה. זוהי תכונה ארכיטקטונית – המערכת תוכננה עבורה, או שלא.
לקוחות MicrocosmWorks עם batch-heavy או periodic workloads רואים בדרך כלל הפחתה של 60-80% בעלויות ה-cloud לאחר הטמעת on-off scaling, מכיוון ש-compute resources פועלים רק במהלך active processing windows במקום 24/7. אנו מתכננים scaling policies המבוססות על actual usage telemetry – לדוגמה, data processing pipeline שרץ 4 שעות ביום משלם רק עבור 4 השעות הללו במקום 24 השעות המלאות. הארכיטקטים שלנו מנתחים את ה-workload patterns שלכם במהלך discovery phase כדי להעריך חיסכון מדויק לפני שמתחילה הטמעה כלשהי.
זמני אתחול קר נעים בין 2-3 שניות עבור יישומים מבוססי קונטיינרים במאגרי node pools מחוממים מראש, ועד 5-10 דקות עבור עומסי עבודה הדורשים מופעי GPU מיוחדים או טעינת מודלים גדולים, ו-MicrocosmWorks משתמשת במספר טכניקות כדי למזער עיכוב זה. אנו מיישמים מדרגיות חזויה המפעילה משאבים לפני ביקוש צפוי באמצעות דפוסי תעבורה היסטוריים ואירועים מתוזמנים, ואנו משתמשים ב-container image pre-pulling וב-warm pool reservations עבור עומסי עבודה הרגישים ל-latency. עבור יישומים שאינם יכולים לסבול כל אתחול קר, אנו שומרים על warm baseline מינימלי שמתרחב באגרסיביות כאשר מגיע ביקוש.
MicrocosmWorks מיישמת קנה מידה אוטומטי (auto-scaling) ריאקטיבי עם מדיניות הגדלת קנה מידה (scale-up) אגרסיבית המופעלת על ידי עומק תור, ניצולת CPU, או מדדי יישום מותאמים אישית, בשילוב עם מדיניות הפחתת קנה מידה (scale-down) הדרגתית יותר הכוללת תקופות צינון כדי למנוע קריסה. אנו מגדירים מאגרי הקצאת יתר (over-provisioning) במהלך אירועי הגדלת קנה מידה, כך שהמערכת צופה צמיחה מתמשכת במקום לרדוף אחר הביקוש מופע אחד בכל פעם. עבור עליות בלתי צפויות באמת כמו מבצעי בזק (flash sales) או אירועים ויראליים, אנו מקצים קיבולת מראש (pre-provision) באמצעות טריגרים מונעי אירועים מלוח השיווק או התפעול שלכם.
MicrocosmWorks מיישמת on-off scaling על מסדי נתונים באמצעות הצעות של מסדי נתונים serverless כמו Aurora Serverless, Neon, או PlanetScale, המאפשרות להוריד את ה-compute לאפס בתקופות סרק, תוך שמירה על אחסון עמיד וזמין באופן מיידי. עבור עומסי עבודה stateful שאינם יכולים להשתמש במסדי נתונים serverless, אנו מיישמים read-replica scaling שמוסיפה ומסירה replicas בהתאם לעומס השאילתות, תוך שמירה על primary instance מינימלי הפועל תמיד. גישה היברידית זו מעניקה ללקוחות את יתרונות העלות של scaling עבור שכבת הנתונים שלהם, ללא המורכבות של ניהול מצב מסד הנתונים במהלך מחזורי כיבוי והפעלה מחדש.
MicrocosmWorks פורסת יכולות תצפית (observability) מקיפות לסקיילינג, העוקבות אחר מספר המופעים (instance counts), השהיית אירועי סקיילינג (scaling event latency), ניסיונות סקיילינג כושלים, והפער בין הקיבולת הרצויה לקיבולת בפועל בזמן אמת באמצעות דאשבורדים של Grafana או Datadog. אנו מגדירים התראות רב-ערוציות עבור כשלים בסקיילינג, ניצול גבוה מתמשך המעיד על כך שתקרת הסקיילינג נמוכה מדי, וחריגות עלות המצביעות על סקיילינג בלתי מבוקר (runaway scaling). ה-runbooks שלנו כוללים תיקון אוטומטי למצבי כשל נפוצים, כמו הגעה למגבלות מופעים (instance limits) של cloud provider או נתקלים בשגיאות של קיבולת לא מספקת באזורי זמינות (availability zones) ספציפיים.