אַשׁרַאי:
במפורטנתיחה שלאחר המוות, אFoursquareהמהנדס מפרט את הנושאים ה"מביכים והמאכזבים" שהביאו את השירות על ברכיו והחזיקו אותו בחלק הארי של היום אתמול.
ריסוק מסדי נתוניםהוא סוג של חלוקה אופקית המאפשרת לאחסן נתונים לפי שורות ולא לפי עמודות. מסד הנתונים של Foursquare מופעל על ידיMongoDB, אשר קנה מידה אופקית באמצעות רסיסים.
ככל הנראה, הבעיות של השירות החלו אתמול בבוקר כאשר מהנדסים הבחינו במספר לא פרופורציונלי של צ'קים המאוחסנים על "רסיס" אחד של מערכת מסדי הנתונים של החברה. ככל שהרסיס נעשה יותר ויותר עומס יתר על המידה, המהנדסים ניסו להכניס רסיס חדש למערכת כדי ליישר את איזון העומס.
לרוע המזל, הרסיס החדש הוציא את כל השירות מסיבות לא ידועות, מהאתר ועד לאפליקציות הנייד; ובכל פעם שהצוות ניסה להפעיל מחדש את האתר, הרסיס המקורי המשיך להעמיס ולהפיל את העבודות שוב.
בסופו של דבר, פורסקוור נאלצה לסמן מחדש את הרסיס, מה שלקח חמש שעות מפרכות. החברה שמחה לדווח כי לא אבדו נתונים.
לעתיד, Foursquare בוחנת מניעת בעיות עומס יתר דומות, הגדרת אמצעי הגנה ושימוש ב"השפלה אמנותית" כדי להבטיח שגיאת מסד נתונים אחת לא תוריד את השירות כולו. זה גם עובד ישירות עם האנשים הטובים ב- MongoDB כדי להבטיח יציבות רבה יותר.
בצד של משתמשי הקצה של הדברים, התקרית הזו הובילה ליצירת בלוג חדש,status.foursquare.com, כמו גם הבטחות לציוצים לפי שעה מ@4sqsupportבתקופות משבר.
למרות ששירותי המדיה החברתית הללו מתנסיםגלים קשים של השבתהלעתים קרובות יותר ממה שהיינו רוצים לדווח, אנו אסירי תודה על המגמה האחרונה שלניתוח שלאחר המוות ממוקד מפתחים. הם נותנים למהנדסי מערכות כורסאות חומר למחשבה, והם עוזרים לכולנו להבין מה הופך שירות טוב ופופולארי לאמין.
למרות ש-11 שעות הן הרבה זמן השבתה, ההפסקה הזו יכלה להיות גרועה יותר. לפחות שום צ'ק-אין או -- חלילה -- חשבונות משתמשים לא אבדו בערבוב הנתונים/רסיסים.
מה אתה חושב על המצוקה ההנדסית של פורסקוור אתמול?