העיקרון הזה הוא חלק מעמודת האופטימיזציה של הביצועים ב-Google Cloud Well-Architected Framework. הוא כולל המלצות שיעזרו לכם לתכנן את המשאבים של עומסי העבודה ב-Google Cloud. הוא מדגיש את החשיבות של הגדרת דרישות מפורטות לפני שמתכננים ומפתחים אפליקציות לפריסה או להעברה בענן.
סקירה כללית של העקרונות
כדי לעמוד בדרישות העסקיות, חשוב להגדיר את דרישות הביצועים של האפליקציות לפני העיצוב והפיתוח. צריך להגדיר את הדרישות האלה בצורה מפורטת ככל האפשר עבור האפליקציה כולה ועבור כל שכבה במערך האפליקציה. לדוגמה, בשכבת האחסון, צריך לקחת בחשבון את קצב העברת הנתונים ואת פעולות הקלט/פלט לשנייה (IOPS) שהאפליקציות צריכות.
כבר מההתחלה, חשוב לתכנן את עיצוב האפליקציה תוך התחשבות בביצועים ובמדרגיות. צריך לקחת בחשבון גורמים כמו מספר המשתמשים, נפח הנתונים ופוטנציאל הצמיחה לאורך זמן.
דרישות הביצועים של כל עומס עבודה משתנות ותלויות בסוג עומס העבודה. כל עומס עבודה יכול להכיל שילוב של מערכות ורכיבים שונים עם מאפייני ביצועים ייחודיים. לדוגמה, למערכת שאחראית לעיבוד ברצף (batch processing) תקופתי של קבוצות נתונים גדולות יש דרישות ביצועים שונות מאלה של פתרון מחשב וירטואלי אינטראקטיבי. אסטרטגיות האופטימיזציה צריכות להתייחס לצרכים הספציפיים של כל עומס עבודה.
בוחרים שירותים ותכונות שתואמים ליעדי הביצועים של כל עומס עבודה. אין פתרון אחד שמתאים לכולם כשמדובר באופטימיזציה של הביצועים. כשמבצעים אופטימיזציה של כל עומס עבודה, המערכת כולה יכולה להשיג ביצועים ויעילות אופטימליים.
כדאי להביא בחשבון את המאפיינים הבאים של עומס העבודה, שיכולים להשפיע על דרישות הביצועים:
- ארכיטיפ פריסה: ארכיטיפ הפריסה שבוחרים לאפליקציה יכול להשפיע על הבחירה של מוצרים ותכונות, ובהמשך על הביצועים שאפשר לצפות מהאפליקציה.
- מיקום משאבים: כשבוחרים Google Cloud אזור למשאבי האפליקציה, מומלץ לתת עדיפות לזמן אחזור נמוך עבור משתמשי הקצה, לפעול בהתאם לתקנות בנושא מיקום נתונים ולהבטיח את הזמינות של מוצרים ושירותים נדרשים Google Cloud .
- קישוריות לרשת: בחרו שירותי רשת שמבצעים אופטימיזציה של גישה לנתונים ושל העברת תוכן. כדאי לנצל את הרשת הגלובלית של Google Cloud, את רשתות הליבה המהירות, את מיקומי הקישוריות ואת שירותי האחסון במטמון.
- אפשרויות לאירוח אפליקציות: כשבוחרים פלטפורמת אירוח, צריך להעריך את היתרונות והחסרונות של כל אפשרות. למשל, כדאי לשקול פלטפורמות של bare metal, מכונות וירטואליות, קונטיינרים ופלטפורמות ללא שרתים.
- אסטרטגיית אחסון: חשוב לבחור אסטרטגיית אחסון אופטימלית על סמך דרישות הביצועים.
- הגדרות משאבים: סוג המכונה, IOPS וקצב העברת הנתונים יכולים להשפיע באופן משמעותי על הביצועים. בנוסף, בשלב מוקדם בתהליך התכנון, צריך לקחת בחשבון את יכולות האבטחה המתאימות ואת ההשפעה שלהן על המשאבים. כשמתכננים תכונות אבטחה, צריך להיות מוכנים להתפשר על הביצועים כדי להימנע מהשפעות בלתי צפויות.
המלצות
כדי להקצות משאבים בצורה אופטימלית, כדאי לעיין בהמלצות שבקטעים הבאים.
הגדרה וניהול של מכסות
חשוב לוודא שהאפליקציה משתמשת רק במשאבים הנדרשים, כמו זיכרון, אחסון וכוח עיבוד. הקצאת יתר עלולה להוביל להוצאות מיותרות, בעוד שהקצאת חסר עלולה לגרום לירידה בביצועים.
כדי להתאים את עצמכם לשינויים בנפח השימוש במשאבים ולוודא שיש לכם מספיק משאבים, מומלץ לעקוב באופן קבוע אחרי הקיבולת של המכסות. בנוסף, כדאי לעקוב אחרי השימוש במכסות כדי לזהות מגבלות פוטנציאליות על שינוי נפח השימוש במשאבים או בעיות בהקצאת יתר של משאבים, ואז לקבל החלטות מושכלות לגבי הקצאת משאבים.
ללמד ולהגביר את המודעות
כדאי ליידע את המשתמשים לגבי דרישות הביצועים ולספק להם מקורות מידע לימודיים על טכניקות יעילות לניהול ביצועים.
כדי להעריך את ההתקדמות ולזהות תחומים לשיפור, כדאי לתעד באופן קבוע את ביצועי היעד ואת הביצועים בפועל. מבצעים בדיקת עומס באפליקציה כדי למצוא נקודות עצירה פוטנציאליות ולהבין איך אפשר להרחיב את האפליקציה.
מעקב אחר מדדי ביצועים
אתם יכולים להשתמש ב-Cloud Monitoring כדי לנתח מגמות במדדי הביצועים, לנתח את ההשפעות של ניסויים, להגדיר התראות למדדים קריטיים ולבצע ניתוחים רטרוספקטיביים.
Active Assist הוא קבוצה של כלים שיכולים לספק תובנות והמלצות שיעזרו לכם לייעל את השימוש במשאבים. ההמלצות האלה יכולות לעזור לכם להתאים את הקצאת המשאבים ולשפר את הביצועים.