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