שרת, ממשקים ונתונים · מתקדם

מטמון: להאיץ בלי להגיש נתונים ישנים

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

איפה שמים

בדפדפן, ברשת ההפצה, בשרת האפליקציה, ובמאגר מפתח־ערך משותף. כל שכבה מהירה יותר וקשה יותר לביטול. רוב הכאב נובע משכבות שנערמו בלי מדיניות אחת מכריעה.

שלוש אסטרטגיות

תפוגה בזמן. פשוטה ומספיקה לרוב. בחרו זמן קצר לנתונים שמשתנים ולוגי לנתונים יציבים.

ביטול באירוע. בכתיבה, מוחקים את המפתח. מדויק יותר, ומחייב לזכור כל מקום שכותב.

רענון ברקע. מגישים עותק קיים ומרעננים במקביל — חוויה חלקה, בתמורה לנתון מעט ישן.

מלכודות

מפתח מטמון שאינו כולל את זהות המשתמש או ההרשאות — כך נתונים של אחד מוגשים לאחר. פקיעה המונית באותו רגע שמפילה את בסיס הנתונים. ומטמון שמכסה על שאילתה איטית במקום לתקן אותה.

לעומק

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