הבלוג של בוסטר מונסטר

בוסטר מונסטר / שיפור מהירות / כיצד הטמנה (Caching) משפיעה על מהירותם של אתרי וורדפרס?

כיצד הטמנה (Caching) משפיעה על מהירותם של אתרי וורדפרס?

נכתב על ידי
בקטגוריה שיפור מהירות

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

הטמנה (Caching): בשביל מה זה טוב?

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

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

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

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

הוספת תוספים

שימוש בפלאגין הטמנה לוורדפרס

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

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

הסרטון הבא נותן טיפים על פלאגינים להטמנה בוורדפרס ומשווה בין שני פלאגינים פופולריים, W3 Total Cache ו-WP Super Cache:

איך מתמודדים עם תוכן דינמי?

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

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

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

פתרון נוסף להתמודדות עם תוכן דינמי הוא שימוש ב-Javascript. לא ניכנס לפרטים הטכניים, אך באופן כללי ניתן לומר שבעוד שהטמנה רגילה עושה שימוש בקוד PHP, ומרגע שה”צילום” של העמוד נוצר, הקוד הזה “נח”, כלומר, לא עובד יותר – קוד Javascript יכול להמשיך לעבוד גם אחרי שההטמנה בוצעה. מי שמעוניין בפתרון הזה יכול לעשות שני דברים: לבקש ממי שמפתח לו את האתר להשתמש ב-Javascript בהטמנה של עמודים באתר שמציגים תוכן דינמי; או למצוא פלאגין יעודי שמטפל בתוכן דינמי באמצעות Javascript. במקרה הכי גרוע, אפשר לכבות את אופציית ההטמנה לעמוד הספציפי.

סיכום

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

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

בוסטר מונסטר תשמח מאד להיפגש ולהכיר אותך :)

Not readable? Change text. captcha txt

Start typing and press Enter to search

לשיתוף הפוסט לחצו כאן
heat-831822_1280racing-car-631733_1920
תודה רבה על השיתוף ! לייק קטן לעמוד שלנו, ותשארו בעניינים על כל מה שחדש כאן :

שתפו את הפוסט עם חברים