שיטות עבודה מומלצות במטמון ב- ASP.Net

מטמון הוא אסטרטגיית ניהול מדינה שאומצה לעתים קרובות ב- ASP.Net כדי לשפר את ביצועי היישום על ידי מזעור צריכת המשאבים במערכת שלך. אם משתמשים בו כראוי, זה יכול לשפר את ביצועי היישום שלך במידה ניכרת על ידי אחסון דף ה- WWb במלואו או בחלקו, או אפילו לאחסן את נתוני היישום על פני בקשות ה- HTTP. אחסון במטמון מאפשר לדף האינטרנט להיות מהיר יותר, ושימוש נכון במטמון ממזער או מפחית התאמות של מסדי נתונים או צריכת משאבי השרת.

אחסון במטמון ב- ASP.Net הוא משלושת הסוגים הבאים:

  1. מטמון פלט עמודים
  2. אחסון במטמון קטעי עמוד
  3. אחסון במטמון נתונים

מטמון פלט עמוד

זוהי סוג של אחסון במטמון ב- ASP.Net המאחסן עותק של דף האינטרנט במטמון הזיכרון, כך שניתן יהיה לשלוח בקשות עוקבות לאותו דף אינטרנט ישירות מהמטמון - הפלט המטמון נשלח ליישום. זה משפר את ביצועי היישום באופן משמעותי. קטע הקוד הבא מראה כיצד ניתן ליישם מטמון של פלט עמודים.

האפשרות VaryByParam מסייעת לך לציין את המשתנים בבקשת Http שיזדקקו לערך מטמון חדש. אפשרויות אפשריות אחרות כוללות: VaryByHeader ו- VaryByCustom. אתה יכול גם לציין מיקום ומשך בהוראת OutputCache - אתה יכול להשתמש בהם כדי לציין את מיקום המטמון וגם את משך הזמן שיש לשמור את דף האינטרנט בהתאמה.

מטמון קטעי דף

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

אחסון במטמון נתונים

ASP.Net חושף את ממשק ה- API של המטמון כדי לאחסן נתונים במטמון לצורך אחזור מאוחר יותר. התחביר לאחסון נתונים במטמון באמצעות ממשק ה- API ניתן למטה.

Cache["key"] = "value";

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

שיטות עבודה מומלצות

עליך לשמור מטמון בתדירות גבוהה ככל האפשר ולשמור נתונים כראוי בכל שכבה ביישום שלך. בעת שימוש במטמון נתונים, עליך ליישם אסטרטגיה מתאימה כדי להבטיח שהנתונים במטמון מסונכרנים עם הנתונים במאגר הנתונים. אתה יכול לנצל את מנהלי המטמון המבוזרים כמו Memcached כך שגם אסטרטגיית המטמון שלך תוכל להתמקד ולספק רווחי ביצועים ניכרים - תוכל להשתמש ב- Memcached לאחסון נתונים גדולים. עליך לוודא שאתה שומר נתונים יחסית ישנים יחסית - אין טעם במטמון נתונים שישתנו לעתים קרובות לאורך זמן. כמו כן, אין לאחסן נתונים במטמון שלא סביר לעשות בהם שימוש חוזר. אתה לא צריך להשתמש יתר על המידה ב- SqlDependency או ב- SqlCacheDependency.

ועכשיו, בואו להכיר את החסרונות של המטמון. אובייקט המטמון זמין לתחום היישום הנוכחי בלבד. לכן, אם ברצונך לאחסן נתונים במטמון ולהנגיש אותם בחוות אינטרנט, זו לא אפשרות. יהיה עליך למנף מטמון מבוזר כמו Windows Server AppFabric Caching או מסגרות מטמון מבוזרות אחרות כדי שהנתונים במטמון יהיו נגישים ברחבי העולם בחוות אינטרנט.

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