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

בעיות שיכולות לגרום לטעינת דפים איטית של האתר

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

זה לא נשמע כמו בעיה גדולה; אולי זה קצת מציק אבל בסופו של דבר הגולשים משיגים את מטרתם, לא? מה זה משנה אם דף באתר נטען תוך 2 שניות או תוך 10 שניות? תתפלאו, זה משנה מאד. מחקר שנערך ב-2010 על 150 אתרים (ו-150 מיליון צפיות בדפים באתרים – pageviews) מצא שטעינה איטית מעלה את שיעור נטישת הדפים ב-38 אחוזים; ואם אלה היו הנתונים לפני 7 שנים, תחשבו מה קורה היום, כשאנשים רגילים לאינטרנט מהיר בהרבה.

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

conversion rate

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

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

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

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

2. קוד צפוף
אלמנטים גדולים ו/או צפופים באתר נוטים להאט אותו. שפות הקוד הנפוצות באתרי אינטרנט הן HTML, ג'אבה סקריפט ו-CSS, והקוד של האתר הוא אחד האלמנטים היותר צפופים בו: באתר פייסבוק לבדו יש יותר מ-60 מיליון שורות קוד! אך לעתים קרובות, שורות הקוד באתר ארוכות בצורה מופרזת ולא נחוצה, שעלולה ממש "לסתום" את השרת. לרוב, זה קורה כתוצאה משימוש בפרקטיקות גרועות של קידוד, כדוגמת קינון עמוק של תגיות HTML, שימוש בקוד מעורפל ובהכרזות משתמעות (implicit declarations) בקוד הבק-אנד, שימוש ברווחים לבנים לא נחוצים ועוד.

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

4. תמונות גדולות מדי
בדרך כלל, תמונות מהוות את האלמנטים המורכבים ביותר באתר. אם הן גדולות וכבדות, לשרת ייקח זמן רב יותר להציג אותן בדפדפן, וכתוצאה מכך כל טעינת העמוד תואט באופן משמעותי. זאת, מאחר שתמונות משתמשות במשאבים רבים של השרת ומעמיסות עליו. לכן, אם יש לכם הרבה תמונות גדולות באתר, יתכן שזו הסיבה שהוא נטען לאט. האפקט הוא מצטבר: ככל שיש יותר תמונות, כך מתווסף עוד זמן שייקח לכל אחת מהן להיטען בנפרד.
יש חשיבות גם לסוגי הקבצים של התמונות. קבצי JPEG, GIF ו-PNG בדרך כלל ייטענו מהר, לעומת קבצים כבדים יותר כמו BMP ו-TIFF שיאטו את האתר משמעותית, במיוחד אם החיבור לאינטרנט הוא מלכתחילה לא כל כך מהיר.

באתר עם תמונות מה שחשוב לעשות מראש זה אופטימיזציה: התאמת התמונות מבחינת גודל ופורמט כך שיעמיסו על השרת כמה שפחות. במקרים רבים בעלי אתרים שוכחים לעשות זאת לתמונות באתרים שלהם ולכן לא מבינים מדוע האתר יפה, המועצב והחדשני שלהם כל כך אטי. יש כלים פשוטים מאד לשימוש באמצעותם ניתן לעשות אופטימיזציה לתמונות, כדוגמת EWWW Image Optimizer , CW Image Optimizer, Lazy Load ו-WP Smush; חלקם אף זמינים כפלאגינים בוורדפרס ובמערכות ניהול תוכן אחרות.

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

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

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

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

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

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

עוד לפני שאתם ניגשים למלאכה, כדאי שתבדקו את מהירות האתר שלכם ותבדקו מה כדאי לשפר. זאת ניתן לעשות באמצעות כלים כמו Google PageSpeed Insights, אשר נותן לאתר ציון על ביצועיו ומציע הסברים, טיפים לתיקון ועוד; או Pingdom Website Speed Test, GT metrix ו-webpagetest שעושים בדיקות די דומות. זה כבר ייתן לכם מקום להתחיל ממנו ומידע ראשוני על הנקודות הבעייתיות באתר.

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