MTTR - למה Time-to-Recover חשוב יותר מ-Time-to-Fail
MTTR - למה Time-to-Recover חשוב יותר מ-Time-to-Fail
במערכות מורכבות, השאלה האמיתית איננה אם יהיה כשל - אלא מה יקרה אחריו.
כשל הוא חלק טבעי ממערכת חיה: עומסים, תקלות חומרה, קונפיגורציות שגויות, הנחות שנשברו. מה שמבדיל בין מערכת שממשיכה לשרת משתמשים לבין מערכת שמשותקת - הוא זמן ההתאוששות.
לא כמה זמן לקח לה להישבר, אלא כמה מהר היא חזרה לעבוד.
MTTR: המדד שבאמת קובע
MTTR - Mean Time To Recovery - מודד את הזמן מרגע שהמערכת נכנסה למצב כשל ועד לרגע שבו היא חוזרת לתפקוד תקין.
זהו מדד שפונה למציאות, לא לאידיאל.
מערכת יכולה:
- להיכשל לעיתים קרובות
- להיתקל בבעיות צפויות ובלתי צפויות
- לחיות בסביבה לא יציבה
ועדיין להיחשב טובה - אם היא יודעת להתאושש מהר.
לעומת זאת, מערכת ש”כמעט אף פעם לא נופלת” אבל כשהיא כן נופלת - נשארת למטה זמן רב - מסוכנת הרבה יותר.
מערכות שנכשלות מהר - אך חוזרות מהר
יש מערכות שמתוכננות כך שכשל מתגלה מיד:
- Timeout קצר
- בדיקות בריאות אגרסיביות
- ניתוק מהיר של רכיב בעייתי
הן אולי “נופלות” לעיתים קרובות יותר על הנייר, אבל בפועל - הנזק קטן.
הכשל קצר, ממוקד, ומבודד.
מערכת כזו לא מנסה להחזיק בכל מחיר. היא מעדיפה להיכשל בצורה ברורה - ולחזור מהר.
המשל
דמיינו כביש עם חיישנים.
כביש אחד:
- לא מזהה סדקים
- ממשיך לפעול “כרגיל”
- עד שפתאום הכול נסגר ליום שלם
כביש אחר:
- מזהה בעיה מוקדם
- חוסם נתיב אחד
- מתקן ומחזיר תנועה במהירות
הכביש השני אולי “נכשל” יותר פעמים - אבל הוא כמעט אף פעם לא משבית את העיר.
השורה התחתונה
Time-to-Fail הוא מדד של תקווה. Time-to-Recover הוא מדד של מציאות.
כשל הוא בלתי נמנע. התאוששות - היא בחירה תכנונית.
ומערכות שמתוכננות נכון לא מבטיחות שלא יפלו - אלא שלא יישארו למטה.