בקטע 'הזדמנויות' בדוח Lighthouse מוצג זמן תגובה של שרת – הזמן שלוקח לדפדפן של משתמש לקבל את הבייט הראשון של תוכן הדף, אחרי שליחת הבקשה:
זמני תגובה איטיים של השרת משפיעים על הביצועים
הביקורת נכשלת אם הדפדפן ממתין יותר מ-600 אלפיות השנייה עד שהשרת מגיב לבקשה למסמך הראשי. משתמשים לא אוהבים לחכות זמן רב לטעינה של דפים. זמני תגובה איטיים של השרת הם אחת מהסיבות האפשריות לזמני טעינה ארוכים של דפים.
כשמשתמשים עוברים לכתובת URL בדפדפן האינטרנט שלהם, הדפדפן שולח בקשת רשת לאחזור התוכן. השרת מקבל את הבקשה ומחזיר את תוכן הדף.
יכול להיות שהשרת יצטרך לבצע הרבה עבודה כדי להחזיר דף עם כל התוכן שהמשתמשים רוצים. לדוגמה, אם משתמשים בודקים את היסטוריית ההזמנות שלהם, השרת צריך לאחזר את ההיסטוריה של כל משתמש ממסד נתונים, ואז להוסיף את התוכן הזה לדף. אופטימיזציה של השרת כדי לבצע משימות כאלה במהירות האפשרית היא אחת הדרכים לצמצם את הזמן שהמשתמשים מבזבזים בהמתנה לטעינה של דפים.
גם אם השרת לא צריך לבצע הרבה עבודה, זמן האחזור ברשת בין הלקוח לשרת עלול לגרום לזמני תגובה איטיים של השרת.
איך לשפר את זמני התגובה של השרת
השלב הראשון בשיפור זמני התגובה של השרת הוא לזהות את המשימות העיקריות ברמת הקונספט שהשרת צריך להשלים כדי להחזיר את תוכן הדף, ולאחר מכן למדוד את משך הזמן של כל אחת מהמשימות האלה. אחרי שתזהו את המשימות הארוכות ביותר, חפשו דרכים לזרז אותן.
יש הרבה סיבות אפשריות לתגובות איטיות מהשרת, ולכן יש הרבה דרכים אפשריות לשיפור:
- מבצעים אופטימיזציה של הלוגיקה של האפליקציה בשרת כדי להכין דפים מהר יותר. אם אתם משתמשים ב-framework של שרת, יכול להיות של-framework יוצגו המלצות איך לעשות זאת.
- לבצע אופטימיזציה של האופן שבו השרת שולח שאילתות למסדי נתונים, או לעבור למערכות מסדי נתונים מהירות יותר.
- כדי לקבל יותר זיכרון או מעבד (CPU), צריך לשדרג את חומרת השרת.
שימוש ב-CDN כדי לצמצם את זמן האחזור ברשת. האפשרות הזו יעילה במיוחד אם אפשר לשמור את המסמך במטמון בצומת הקצה של ה-CDN.
פרטים נוספים זמינים במדריך בנושא אופטימיזציה של זמן אחזור טעינה ראשוני (TTFB).
הנחיות ספציפיות למקבץ
Drupal
הפחתת עומס התנועה באמצעות מודול אחד או יותר של Drupal
לאחסון במטמון, כמו Internal Page Cache
, Internal Dynamic Page Cache
ו-BigPipe
. כדאי לשלב את הפתרונות האלה עם CDN כדי לשפר עוד יותר את זמני התגובה. שרתי האירוח שלך צריכים להשתמש ב-PHP OPcache. כדאי להשתמש בשמירת זיכרון במטמון כמו Redis או Memcached כדי לצמצם את זמני השאילתות במסד הנתונים. לבסוף, כדאי להשתמש בעיצובים, במודולים ובשרתים מהירים יותר עם ביצועים טובים כדי לקצר את זמן התגובה של השרת.
Magento
אפשר להשתמש בשילוב Varnish של Magento.
React
אם אתם מבצעים רינדור בצד השרת של רכיבי React, מומלץ להשתמש ב-renderToNodeStream()
או ב-renderToStaticNodeStream()
כדי לאפשר ללקוח לקבל ולרוקן חלקים שונים של תגי העיצוב במקום את הכול בבת אחת.
WordPress
בחרו עיצוב קליל (רצוי עיצוב בלוק) ומטמיעים שמירה במטמון של דף מלא או פתרון של אתר סטטי. משביתים יישומי פלאגין לא נחוצים כדי למזער את עומס העבודה על השרת.
כדאי לשדרג את האירוח לשירות מנוהל או ייעודי.