Preload, Preconnect, Prefetch: רמזי משאבים עבור Core Web Vitals

טעינת עמוד איטית מרחיקה משתמשים ופוגעת בהמרות, במיוחד כשהדפדפן מגלה משאבים קריטיים מאוחר מדי. אנחנו מיישמים Resource Hints — preload, preconnect ו-prefetch — כדי להאיץ את הצגת התוכן ולשפר את Core Web Vitals. הצוות שלנו מספק אופטימיזציה מלאה עם תמיכה מתמשכת, ומבטיח ביצועים יציבים וסקלביליות לצד העסק שלכם.

פיתוח ותחזוקה של כל סוגי האתרים:

אתרי מידע או יישומי אינטרנט
אתרי תדמית, דפי נחיתה, אתרי חברה, קטלוגים מקוונים, חידונים, אתרי קידום, בלוגים, מקורות חדשות, פורטלי מידע, פורומים, אגרגטורים
אתרי מסחר אלקטרוני או יישומי אינטרנט
חנויות מקוונות, פורטלי B2B, שווקים, בורסות מקוונות, אתרי קאשבק, בורסות, פלטפורמות דרופשיפינג, מנתחי מוצרים
יישומי אינטרנט לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, פורטלים ארגוניים, מערכות ניהול ייצור, מנתחי מידע
אתרי שירות אלקטרוני או יישומי אינטרנט
פלטפורמות מודעות, בתי ספר מקוונים, בתי קולנוע מקוונים, בוני אתרים, פורטלים לשירותים אלקטרוניים, פלטפורמות אירוח וידאו, פורטלים נושאיים

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 2062 השירותים
Preload, Preconnect, Prefetch: רמזי משאבים עבור Core Web Vitals
בינוני
~1 יום

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אתר חברה B2B ADVANCE
    פיתוח אתר חברה B2B ADVANCE
    1504
  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1344
  • פיתוח אתר עבור BELFINGROUP
    פיתוח אתר עבור BELFINGROUP
    1052
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1310
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1050
  • פיתוח אתר לחברת FIXPER
    פיתוח אתר לחברת FIXPER
    1034

תארו לעצמכם: משתמש פותח חנות מקוונת, אבל תמונת ה-LCP של הבאנר הראשי נטענת תוך 2.5 שניות — ההמרה יורדת ב-53%. הסיבה השורשית היא גילוי מאוחר של משאבים על ידי הדפדפן. ככל שגופן או תמונה נמצאים עמוק יותר ב-DOM, כך הדפדפן מוצא אותם מאוחר יותר ומתחיל לטעון אותם. זה קריטי במיוחד עבור אפליקציות SPA ואפליקציות React עם רכיבים נטענים באופן דינמי. הפתרון הוא Resource Hints: preload, preconnect ו-prefetch. הם נותנים לדפדפן הוראות מה לטעון קודם. במשך למעלה מ-5 שנות עבודה, יישמנו טכניקות אלו בעשרות פרויקטים — בכל פעם Core Web Vitals השתפרו ב-200–800 אלפיות השנייה ללא שינוי בארכיטקטורה. לדוגמה, הגדרת preconnect ל-Google Fonts ול-CDN קיצצה את ה-TTFB ב-300–400 אלפיות השנייה, וטעינה מוקדמת של תמונת ה-LCP הפחיתה את ה-LCP פי 1.7. בפרויקט אחד, זה חסך 11,000–16,000 דולר בשנה בעלויות שרת.

אילו בעיות Resource Hints פותרים

  • עומס חיבור — כל דומיין חדש דורש DNS, TCP ו-TLS. Preconnect מבטל את העיכוב הזה על ידי יצירת החיבור לפני גילוי המשאב.
  • גילוי מאוחר — אם משאב קריטי כלול בסוף ה-HTML, הדפדפן מתחיל לטעון אותו מאוחר. Preload מאלץ טעינה מוקדמת.
  • טעינת N+1 — במהלך ניווט, prefetch טוען מראש סקריפטים וסגנונות לעמוד הבא, ומפחית את זמן ההמתנה.

שלוש הוראות ותכליתן

הוראה מתי להשתמש מה היא עושה
preconnect מוקדם ככל האפשר DNS + TCP + TLS לדומיין
preload עמוד נוכחי טעינת משאב בעדיפות גבוהה
prefetch עמוד הבא טעינה ברקע בעדיפות נמוכה

למה Preload קריטי עבור LCP?

תמונת ה-LCP היא המועמדת הראשית ל-preload. בלעדיו, הדפדפן מוריד HTML, מנתח אותו, מוצא את התמונה, ורק אז מתחיל לטעון אותה. עם preload, הטעינה מתחילה במקביל לניתוח. בפרויקטים שלנו, יישום preload עבור אלמנט ה-LCP חוסך 500–800 אלפיות השנייה במכשירים ניידים. בדיקה ב-WebPageTest הראתה: טעינה מוקדמת של תמונת ה-LCP משפרת את ה-LCP פי 1.7 בהשוואה ללא הוראות. זה משפיע ישירות על מדדי התנהגות והכנסות.

איך אנו מגדירים Resource Hints

התהליך מתחיל באודיט: אנו מזהים משאבים קריטיים דרך Chrome DevTools (Network → Priority). לאחר מכן:

  1. מנתחים דומיינים של צד שלישי — מזהים בקשות HTTP (גופנים, אנליטיקה, CDN). עבור כל אחד, מחליטים: preconnect או dns-prefetch.
  2. מזהים LCP ובלוקים קריטיים — מוצאים את האלמנט עם השטח הנראה הגדול ביותר, מגדירים preload עם as="image". עבור תמונות רספונסיביות, מוסיפים imagesrcset ו-imagesizes.
  3. מגדירים prefetch לתרחישים מרכזיים — תשלום, התחברות, עמודי קטלוג. משתמשים ב-prefetch דינמי בעת ריחוף.
  4. מיישמים את Speculation Rules API — עבור משתמשי Chrome, מוסיפים prerender לעמודים עם הסתברות מעבר גבוהה.
  5. מוודאים דרך Lighthouse — שהפער של 200+ אלפיות השנייה ב-LCP נסגר.

Preconnect — ביטול עומס החיבור

<head>
  <!-- Критичные сторонние домены — устанавливаем соединение заранее -->
  <link rel="preconnect" href="https://fonts.googleapis.com">
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  <link rel="preconnect" href="https://cdn.example.ru" crossorigin>
  <!-- API сервер если он на другом домене -->
  <link rel="preconnect" href="https://api.example.ru">
  <!-- dns-prefetch: только DNS, без TCP (для менее критичных) -->
  <link rel="dns-prefetch" href="https://analytics.google.com">
  <link rel="dns-prefetch" href="https://mc.yandex.ru">
</head>

<head> <!-- Критичные сторонние домены — устанавливаем соединение заранее --> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preconnect" href="https://cdn.example.ru" crossorigin> <!-- API сервер если он на другом домене --> <link rel="preconnect" href="https://api.example.ru"> <!-- dns-prefetch: только DNS, без TCP (для менее критичных) --> <link rel="dns-prefetch" href="https://analytics.google.com"> <link rel="dns-prefetch" href="https://mc.yandex.ru"> </head> נדרש עבור משאבים עם CORS (גופנים, JSON API).

Preload — טעינה בעדיפות של משאבי העמוד הנוכחי

<head>
  <!-- LCP-изображение — самый важный preload -->
  <link rel="preload" as="image" href="/images/hero.webp" imagesrcset="/images/hero-640.webp 640w, /images/hero-1280.webp 1280w" imagesizes="100vw">
  <!-- Кастомный шрифт -->
  <link rel="preload" as="font" type="font/woff2" href="/fonts/inter-regular.woff2" crossorigin>
  <!-- Критичный JS-модуль (не defer/async) -->
  <link rel="preload" as="script" href="/js/checkout.js">
  <!-- CSS (если не в <head> напрямую) -->
  <link rel="preload" as="style" href="/css/above-fold.css" onload="this.onload=null;this.rel='stylesheet'">
</head>

סוגי משאבים: crossorigin, <head> <!-- LCP-изображение — самый важный preload --> <link rel="preload" as="image" href="/images/hero.webp" imagesrcset="/images/hero-640.webp 640w, /images/hero-1280.webp 1280w" imagesizes="100vw"> <!-- Кастомный шрифт --> <link rel="preload" as="font" type="font/woff2" href="/fonts/inter-regular.woff2" crossorigin> <!-- Критичный JS-модуль (не defer/async) --> <link rel="preload" as="script" href="/js/checkout.js"> <!-- CSS (если не в <head> напрямую) --> <link rel="preload" as="style" href="/css/above-fold.css" onload="this.onload=null;this.rel='stylesheet'"> </head> , image, script, style, font, fetch, document, track.

Prefetch — טעינה מוקדמת של העמוד הבא

<!-- На странице корзины — prefetch страницы оформления заказа -->
<link rel="prefetch" href="/checkout">
<link rel="prefetch" as="script" href="/js/checkout.chunk.js">
<link rel="prefetch" as="style" href="/css/checkout.css">

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

איך Speculation Rules API משפר את ה-Prefetch?

Prefetch טוען משאבים ברקע — אם המשתמש לא מנווט, רוחב הפס מתבזבז. Speculation Rules API מאפשר prerender מלא של עמוד או הגדרת audio. זה מספק ניווט מיידי ללא בזבוז רוחב פס.

<script type="speculationrules">
  {
    "prerender": [
      {
        "where": {
          "and": [
            { "href_matches": "/products/*" },
            { "not": { "href_matches": "/api/*" } }
          ]
        },
        "eagerness": "moderate"
      }
    ],
    "prefetch": [
      {
        "urls": ["/checkout", "/cart"],
        "eagerness": "eager"
      }
    ]
  }
</script>

ערכי eagerness: video, <!-- На странице корзины — prefetch страницы оформления заказа --> <link rel="prefetch" href="/checkout"> <link rel="prefetch" as="script" href="/js/checkout.chunk.js"> <link rel="prefetch" as="style" href="/css/checkout.css"> , eagerness, <script type="speculationrules"> { "prerender": [ { "where": { "and": [ { "href_matches": "/products/*" }, { "not": { "href_matches": "/api/*" } } ] }, "eagerness": "moderate" } ], "prefetch": [ { "urls": ["/checkout", "/cart"], "eagerness": "eager" } ] } </script> .

Early Hints (103)

השרת שולח כותרות preload לפני שהתגובה הראשית נוצרת — בזמן שהשרת מייצר HTML, הדפדפן כבר מתחיל לטעון משאבים. זה חוסך 100–200 אלפיות השנייה ב-TTFB.

# Nginx с модулем http_v2_module
location / {
    http2_push /css/app.css;
    http2_push /js/app.js;
    http2_push /fonts/inter.woff2;
}

טעויות נפוצות וכיצד להימנע מהן

טעות פתרון
Preload למשאב שאינו בשימוש בדקו שהמשאב באמת קריטי דרך Coverage ב-DevTools
Preload לגופן ללא crossorigin תמיד הוסיפו eagerness לגופנים
יותר מדי הוראות preload הגבילו ל-2–3 הוראות לעמוד
Preload + טעינה עצלה השתמשו ב-preload רק עבור LCP; השאר — טעינה עצלה

מה כלול בהגדרת Resource Hints?

  • אודיט של פרופיל הטעינה הנוכחי (Lighthouse, WebPageTest).
  • הצבת preconnect לדומיינים קריטיים של צד שלישי.
  • Preload לתמונת LCP וגופנים קריטיים.
  • Prefetch לעמודים עם שיעורי מעבר גבוהים.
  • שילוב Speculation Rules API (Chrome).
  • תיעוד ההוראות שיושמו והמלצות תחזוקה.
  • הבטחה ש-Core Web Vitals לא יתדרדרו לאחר השחרור.

לוח זמנים ועלות

לוח זמנים: בין 4 ל-16 שעות בהתאם לגודל הפרויקט ומספר העמודים. העלות המדויקת מחושבת באופן אישי — צרו קשר להערכה. הזמינו אודיט טעינה: המהנדסים שלנו עם ניסיון של 5+ שנים יעזרו להאיץ את האתר שלכם. אנו מבטיחים שיפור ב-LCP וב-FCP של 200–800 אלפיות השנייה.