מטמון קלמארי - חלק 2

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

עכשיו הדבר המעניין שדיונון עושה הוא המטמון (לדעתי). אתה תגיד לי, למה לשמור מטמון? הסיבה היא פשוטה, לנהל טוב יותר את השימוש במהירות שלך ורוחב הפס הוא העיקר. תחשוב היטב, 1000 אנשים בחברה שלך מתייעצים כל 5 דקות, דפים משותפים, גוגל, Hotmail, Gmail וכו '... כך שאתה הולך להוריד תמונות, באנרים, פרסום, תוכן HTML שוב ושוב, כל אלה דברים סטטיים, לא הם משתנים לעתים קרובות כל כך, עדיף לאחסן אותם ברשת המקומית שלך ולספק עותק שנראה לך לאחרונה בתצורות ששקלת.

איך לעשות את זה? פשוט עם המשפט הבא:

refresh_pattern [-i] regex min percent max [options]

כמו שאני תמיד אומר, אל תאמין להכל, אז אני מזמין אותך לקרוא מהמקור הרשמי. אני ממליץ לך לקרוא את המדריך של משפט זה כאן

משפט רענון_דפוס זה תמיד יהיה התווית שלנו להוסיף פרמטרים חדשים למטמון.

חשוב, רשימות המטמון שלך חייבות להיות רצופות, מכיוון שברגע שהוא תואם את הראשון שתואם את האובייקט, הוא לא ימשיך לקרוא את הכללים האחרים שלך

ביטויים רגולריים הם תלויי-רישיות, ולכן flv אינו זהה ל- FLV, אך תוכל להימנע מכך אם תרצה בכך באמצעות האפשרות -i . ואז זה ייראה ככה לרענן_דפוס -אי

'דקה': הוא הזמן (דקות) בו ייחשב אובייקט "אחרון או טרי" ואם אין לו תווית מפורשת של "פג תוקפו". כברירת מחדל דיונון ממליץ שהוא יהיה 0, מסיבות שכמה יישומים דינמיים יכולים להתנהג באופן מוזר, טהור בלה בלה בלה, באמת שערך זה צריך להיות מספר שלדעתך שימושי ויעיל עבור האלמנטים שאתה רוצה לשמור. דוגמה: jpg, 1440 דקות (ביום) נראה לי בסדר, זה לא כאילו בעמוד התמונות של ההודעה מתחלפות כל 5 דקות.

'אָחוּז' זה אחוז הגיל של אובייקט (מאז השינוי האחרון) שייחשב ל"אחרון או טרי ". תן לי להסביר, אולי אם מבצעים טעינה מתמדת או רענון כדי לראות את השינויים האחרונים שבוצעו בדף אינטרנט, קלמארי יכול לשקול אם כבר נגמר, למשל, 50% מהזמן בין דקות y מקסימום, הורד מחדש את האובייקט מהאינטרנט ותתן לך עותק חדש.

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

Options:
override-expire
override-lastmod
reload-into-ims
ignore-reload
ignore-no-store
ignore-private
max-stale=NN
refresh-ims
store-stale

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

override-expire

זה אוכף את הזמן המינימלי של אובייקט, גם אם השרת שלח זמן תפוגה קצר יותר (לדוגמא דברים כמו כותרת או בקרת מטמון: max-age). אם נעשה זאת, תופיע "אזהרה" האומרת דברים מסוג זה "פוגעת בתקן HTTP" אך זו רק אזהרות שנוכל להתעלם מהן. כעת, אם הזמן שהשרת שולח ארוך יותר, אז הדיונון ייקח את הזמן (תפוגה) של השרת

override-lastmod

מחזק את הזמן המינימלי של פריט, גם אם פריט זה שונה לאחרונה.

reload-into-ims

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

ignore-reload

התעלם מפעולת המשתמשים ללחוץ על כפתור העמוד מחדש או לרענן

ignore-no-store

התעלם מכל כלל בכותרות שלא למטמון, למשל לסרטונים

ignore-private

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

refresh-ims

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

store-stale

קלמארי ישמור את כל התגובות הללו, גם אם אין להן תאריך תפוגה, זה מאוד לא מעשי מכיוון שלרוב לא ניתן לעשות בהן שימוש חוזר. אם תחליט לאפשר זאת עליך להכריז על max-stale = NN

max-stale=NN

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

להלן טבלה כיצד המצב של "FRESH" טרי עובד על פי הערכים עליהם דנו:

  • טרי אם יפוג> עכשיו, אחרת STALE
  • STALE אם גיל> מקסימום
  • טרי אם lm- גורם <אחוז, אחרת STALE
  • טרי אם גיל <דקה אחר STALE

להלן דוגמה לתצורה עבור חברה ספציפית עם הרבה מקום בדיסק, ציוד טוב ורוחב פס טוב

refresh_pattern -i \.(3gp|7z|ace|asx|bin|deb|divx|dvr-ms|ram|rpm|exe|inc|cab|qt)$ 43200 99% 43200 ignore-no-store ignore-must-revalidate override-expire override-lastmod reload-into-ims

refresh_pattern -i \.(rar|jar|gz|tgz|bz2|iso|m1v|m2(v|p)|mo(d|v)|arj|lha|lzh|zip|tar)$ 43200 99% 43200 ignore-no-store ignore-must-revalidate override-expire override-lastmod reload-into-ims

refresh_pattern -i \.(jp(e?g|e|2)|gif|pn[pg]|bm?|tiff?|ico|swf|dat|ad|txt|dll)$ 43200 99% 43200 ignore-no-store ignore-must-revalidate override-expire override-lastmod reload-into-ims

refresh_pattern -i \.(avi|ac4|mp(e?g|a|e|1|2|3|4)|mk(a|v)|ms(i|u|p)|og(x|v|a|g)|rm|r(a|p)m|snd|vob)$ 43200 99% 43200 ignore-no-store ignore-must-revalidate override-expire override-lastmod reload-into-ims

refresh_pattern -i \.(pp(t?x)|s|t)|pdf|rtf|wax|wm(a|v)|wmx|wpl|cb(r|z|t)|xl(s?x)|do(c?x)|flv|x-flv)$ 43200 99% 43200 ignore-no-store ignore-must-revalidate override-expire override-lastmod reload-into-ims
cache_mem 8092 MB

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

maximum_object_size_in_memory 1024 KB

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


memory_replacement_policy heap GDSF
cache_replacement_policy heap GDSF

כפי שאתה יכול לראות, האחת היא המדיניות להחלפת מטמון בזיכרון זיכרון RAM ואחרת בדיסק הקשיח. ישנן שתי מדיניות GDSF ו- LFUDA. הראשון מבקש לשפר את אחוז כניסות המטמון, שיש הרבה אובייקטים קטנים בהישג יד, השני מחפש את ההפך, זה שומר אובייקטים במטמון ללא קשר לגודל שלהם.

השאלה שאני מדמיין שאתה שואל אותי כרגע היא, באיזה שימוש אני משתמש? ובכן, אם אתה מחשיב שבסביבתך הם עושים שאילתות רבות ומעט הורדות משתמשות ב- GDSF אם להפך הם עושים הורדות רבות ומעט שאילתות LFUDA . שאם אני ממליץ על LFUDA כשאתה הולך לעשות, אני לא יודע, לשמור מטמון בדיסק 1TB, זה יעיל יותר.

maximum_object_size 4 MB

ניתן לאחסן את הגודל המרבי שאובייקט יכול להיות

cache_dir aufs /media/proxy249/cache 100 16 256

היכן שהמטמון יאוחסן, תשומת לב כאן, חשוב אם אתה משתמש ב- ufs, aufs או diskd, כל 3 עובדים זהים פחות או יותר, ההבדל הוא ש- aufs ו- diskd עובדים עם תהליכים נפרדים כדי לבצע פעולות קלט / פלט על הקשיח. דיסק והימנע שתהליכי דיונון נתקעים במהלך פעולות אלה, בנוסף diskd אתה יכול לציין את מספר האשכולות שיהיה לך למשימה זו. אני ממליץ על aufs אם יש לך צוות טוב.

גודל 100 (מגה-בייט), אתה יכול לשים 100000 הוא כמעט 100GB תלוי בזמינות שלך. 16 הוא מספר התיקיות, ו- 256 הוא מספר תיקיות המשנה. אתה יכול לשחק עם שני הערכים תלוי כמה מהר הדיסקים שלך וכמה משאבים יש לך.


cache_swap_low 90
cache_swap_high 95

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

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


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   אינג 'חוסה אלברט דיג'ו

    השלמה מצוינת לחלק הראשון!

    יש הרבה ספרות על דיונונים על כך, אבל לא תמיד מגיעים לנקודה באפשרויות המעשיות ביותר שלה עם ההסברים שלהם בהתאמה ותרחישים לשימוש אמיתי!

    כמו תמיד, אני מצפה לחלק השלישי בו!

    1.    ברודידל דיג'ו

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

  2.   ארטוס דיג'ו

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

    1.    ברודידל דיג'ו

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

      1.    ארטוס דיג'ו

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

        תודה על עזרתך.

    2.    מריו דיג'ו

      שרת עם קלמארי עובד, מכיוון שהם פשוט הורדות http לא מוצפנות. פתרונות אחרים למטמון הם WSUS ו- Altiris, רגילים בחברות.

      1.    ארטוס דיג'ו

        תודה מריו אני אשמור על זה.

    3.    ברודידל דיג'ו

      בסדר מוכן, אני מבין, בדוק את הקישור הזה. http://wiki.squid-cache.org/SquidFaq/WindowsUpdate. כדי לשמור מטמון אנטי-וירוס, עליך לדעת מהיכן הורדות העדכונים ומתחת איזו סיומת (דוגמה .exe) ולשמור אותו במטמון ...

  3.   ארטוס דיג'ו

    תודה על עזרתך.

  4.   אריק דיג'ו

    בוקר טוב חברים, האם תוכל לתמוך בי במקרה שלי. מכיוון שיש לי דיונון 2.7 .STABLE9 על Debian 6, והגדרתי הכל וכאשר אני מרכיב אותו בסביבת 10 מחשבים אישיים, אני מקבל דואר רגיל, הבעיה נעוצה כאשר אני מרכיב אותו ל- 90 PC, זה נמשך רק כמה שניות בעבודה ומשם כולם הם נשארים ללא אינטרנט. אתה יכול לתמוך בי?

  5.   ג'וז ריבאס דיג'ו

    הסבר מצוין, בסיסי אבל מאוד ברור ומדויק. באופן אישי ההסבר הכי טוב שהצלחתי לקרוא.
    יש לי שאלה, האם ניתן לשמור במטמון יישומי אנדרואיד כמו apk ו- xapk?
    ומה תהיה הדרך הנכונה להגדיר מטמון דינמי אשר יהיה מקור הקבצים?
    אני משתמש ב- pfSense 2.4.5.