יכול להיות שתשתמשו בפקודות Redis שדורשות הרבה משאבים. ככל שגודל הנתונים הכולל או גודל המפתח גדל, כך גדלה העלות של השימוש בפקודות האלה. השימוש בפקודות עלול לגרום לבעיות הבאות בביצועים:
- זמן אחזור ארוך ופסק זמן של הלקוח
- לחץ על הזיכרון שנגרם כתוצאה מפקודות שמגדילות את השימוש בזיכרון
- אובדן נתונים במהלך שכפול וסנכרון של צמתים כי ה-thread הראשי של Redis חסום
- בדיקות תקינות, יכולת צפייה ושכפול
כדי לפתור את בעיות הביצועים האלה, אפשר להשתמש בבעיית התקינות Expensive commands. כדי לגשת לבעיה הזו, אפשר להשתמש בDatabase Center. זהו מרכז בקרה שנעזר ב-AI ומציג תצוגה מרכזית של בעיות בריאותיות באשכולות.
לפני שמתחילים
לפני שמתחילים להשתמש בבעיית התקינות Expensive commands, צריך לבצע את הפעולות המקדימות שמפורטות בקטע הזה.
הקצאת תפקידים והרשאות
כדי להשתמש ב-Database Center כדי להציג בעיות בריאותיות ולעבוד איתן, צריך לקבל הרשאות IAM ל-Database Center. מידע נוסף על קבלת ההרשאות האלה זמין במאמר הענקת הרשאות IAM.
בנוסף, מידע נוסף על תפקידי IAM זמין במאמרים אינדקס של תפקידים והרשאות ב-IAM וניהול הגישה לפרויקטים, לתיקיות ולארגונים.
הצגת הבעיה הבריאותית
כדי לראות את בעיית התקינות Expensive commands (פקודות יקרות):
נכנסים לדף All resources במסוף Google Cloud ב-Database Center.
לוחצים על התפריט מוצרים. בתיבת הדו-שיח Products:
אופציונלי: אם יש מוצרים שנבחרו, מבטלים את הבחירה שלהם.
בחלונית Memorystore, בוחרים באפשרות Redis Cluster 7.0.
לוחצים על אישור.
לוחצים על התפריט בעיות. בתיבת הדו-שיח Issues:
מחיקת כל הבעיות שנבחרו.
בחלונית ביצועים וקיבולת, בוחרים בבעיית התקינות Expensive commands (פקודות יקרות).
לוחצים על אישור. ב-Database Center מוצגים כל האשכולות שקשורים אליהם בעיות בביצועים שנובעות מפקודות יקרות.
לוחצים על הבעיה שמופיעה לצד השם של אשכול. הבעיה Expensive commands (פקודות יקרות) תיפתח בחלונית נפרדת.
אם הבעיה לא מופיעה ליד האשכול, סימן שלא נעשה שימוש בפקודות יקרות באשכול.
כדי לראות מידע מפורט על בעיית התקינות, לוחצים על החץ להרחבה (expand_more) בחלונית.
לטיפול בבעיה שקשורה לבריאות
כדי לפתור את בעיית התקינות Expensive commands, במקום להשתמש בפקודות יקרות, צריך להשתמש בפקודות יעילות מבחינת משאבים. לדוגמה, כדי להסיר קבצים וקישורים, אפשר להשתמש בפקודה UNLINK במקום בפקודה DEL היקרה יותר.
בנוסף, אפשר להשתמש ב-Cloud Monitoring כדי לראות את המדד /cluster/cpu/maximum_utilization ואת היומנים בצד הלקוח. בודקים אם תקופות השימוש הגבוה ב-CPU חופפות לתקופות שבהן הפקודות היקרות פעלו.