Polski

Dowiedz się, jak używać wskazówek dotyczących zasobów, takich jak preload, prefetch i preconnect, aby zoptymalizować czas ładowania strony i poprawić wrażenia użytkowników.

Zwiększanie szybkości strony internetowej za pomocą wskazówek dotyczących zasobów: Preload, Prefetch i Preconnect

W dzisiejszym dynamicznym świecie cyfrowym szybkość strony internetowej jest najważniejsza. Użytkownicy oczekują, że strony będą ładować się szybko i odpowiadać natychmiast. Wolne czasy ładowania mogą prowadzić do złego doświadczenia użytkownika, wyższych wskaźników odrzuceń i ostatecznie utraty klientów. Wskazówki dotyczące zasobów to potężne narzędzia, które mogą pomóc programistom zoptymalizować czas ładowania strony, informując przeglądarkę, które zasoby są ważne i jak je priorytetyzować. Ten artykuł omawia trzy kluczowe wskazówki dotyczące zasobów: preload, prefetch i preconnect oraz zawiera praktyczne przykłady implementacji.

Zrozumienie wskazówek dotyczących zasobów

Wskazówki dotyczące zasobów to dyrektywy, które instruują przeglądarkę o zasobach, których strona internetowa będzie potrzebować w przyszłości. Pozwalają one programistom proaktywnie informować przeglądarkę o krytycznych zasobach, umożliwiając jej pobranie lub nawiązanie połączenia z nimi wcześniej niż w normalnych okolicznościach. Może to znacząco skrócić czas ładowania i poprawić postrzeganą wydajność.

Trzy podstawowe wskazówki dotyczące zasobów to:

Preload: Priorytetyzacja krytycznych zasobów

Co to jest Preload?

Preload to deklaratywne pobieranie, które pozwala poinformować przeglądarkę o pobraniu zasobu potrzebnego do bieżącej nawigacji tak wcześnie, jak to możliwe. Jest to szczególnie przydatne w przypadku zasobów, które są późno odkrywane przez przeglądarkę, takich jak obrazy, czcionki, skrypty lub arkusze stylów ładowane przez CSS lub JavaScript. Wstępne ładowanie tych zasobów zapobiega ich blokowaniu renderowania i poprawia postrzeganą szybkość ładowania strony internetowej.

Kiedy używać Preload

Używaj preload dla:

Jak zaimplementować Preload

Możesz zaimplementować preload za pomocą tagu <link> w sekcji <head> dokumentu HTML:

<link rel="preload" href="/fonts/myfont.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/styles/critical.css" as="style">
<link rel="preload" href="/scripts/app.js" as="script">
<link rel="preload" href="/images/hero.jpg" as="image">

Wyjaśnienie:

Przykład: Wstępne ładowanie czcionki

Wyobraź sobie, że masz niestandardową czcionkę o nazwie „OpenSans” używaną na Twojej stronie internetowej. Bez preload, przeglądarka odkrywa tę czcionkę dopiero po przetworzeniu pliku CSS. Może to spowodować opóźnienie w renderowaniu tekstu z właściwą czcionką. Wstępne ładowanie czcionki może wyeliminować to opóźnienie.

<link rel="preload" href="/fonts/OpenSans-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous">

Przykład: Wstępne ładowanie krytycznego pliku CSS

Jeśli Twoja strona internetowa ma krytyczny plik CSS, który jest niezbędny do renderowania początkowego widoku, jego wstępne ładowanie może znacząco poprawić postrzeganą wydajność.

<link rel="preload" href="/styles/critical.css" as="style">

Najlepsze praktyki dotyczące Preload

Prefetch: Przewidywanie przyszłych potrzeb

Co to jest Prefetch?

Prefetch to wskazówka dotycząca zasobów, która mówi przeglądarce o pobraniu zasobów, które prawdopodobnie będą potrzebne do przyszłych nawigacji lub interakcji. W przeciwieństwie do preload, który skupia się na zasobach potrzebnych do bieżącej strony, prefetch przewiduje następny ruch użytkownika. Jest to szczególnie przydatne do poprawy szybkości ładowania kolejnych stron lub komponentów.

Kiedy używać Prefetch

Używaj prefetch dla:

Jak zaimplementować Prefetch

Możesz zaimplementować prefetch za pomocą tagu <link> w sekcji <head> dokumentu HTML:

<link rel="prefetch" href="/page2.html">
<link rel="prefetch" href="/images/product.jpg">
<link rel="prefetch" href="/scripts/modal.js">

Wyjaśnienie:

Przykład: Wstępne pobieranie zasobów następnej strony

Jeśli Twoja strona internetowa ma jasny przepływ użytkownika, taki jak wieloetapowy formularz, możesz wstępnie pobrać zasoby dla następnego kroku, gdy użytkownik jest na bieżącym kroku.

<link rel="prefetch" href="/form/step2.html">

Przykład: Wstępne pobieranie zasobów dla okna modalnego

Jeśli Twoja strona internetowa używa okna modalnego, które ładuje dodatkowe zasoby po otwarciu, możesz wstępnie pobrać te zasoby, aby zapewnić płynne wrażenia użytkownika.

<link rel="prefetch" href="/scripts/modal.js">
<link rel="prefetch" href="/styles/modal.css">

Najlepsze praktyki dotyczące Prefetch

Preconnect: Nawiązywanie wczesnych połączeń

Co to jest Preconnect?

Preconnect to wskazówka dotycząca zasobów, która pozwala na nawiązanie wczesnych połączeń z ważnymi serwerami stron trzecich. Nawiązanie połączenia obejmuje kilka kroków, w tym wyszukiwanie DNS, nawiązanie połączenia TCP i negocjacjację TLS. Kroki te mogą dodać znaczące opóźnienie do ładowania zasobów z tych serwerów. Preconnect pozwala na zainicjowanie tych kroków w tle, dzięki czemu, gdy przeglądarka potrzebuje pobrać zasób z serwera, połączenie jest już nawiązane.

Kiedy używać Preconnect

Używaj preconnect dla:

Jak zaimplementować Preconnect

Możesz zaimplementować preconnect za pomocą tagu <link> w sekcji <head> dokumentu HTML:

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preconnect" href="https://cdn.example.com">

Wyjaśnienie:

Przykład: Preconnect do Google Fonts

Jeśli Twoja strona internetowa używa Google Fonts, nawiązanie pre-połączenia z https://fonts.gstatic.com może znacząco zmniejszyć opóźnienia w ładowaniu czcionek.

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

Atrybut crossorigin jest tutaj kluczowy, ponieważ Google Fonts używa CORS do serwowania czcionek.

Przykład: Preconnect do CDN

Jeśli Twoja strona internetowa korzysta z CDN do serwowania statycznych zasobów, nawiązanie pre-połączenia z nazwą hosta CDN może zmniejszyć opóźnienie w ładowaniu tych zasobów.

<link rel="preconnect" href="https://cdn.example.com">

Najlepsze praktyki dotyczące Preconnect

Łączenie wskazówek dotyczących zasobów dla optymalnej wydajności

Prawdziwa moc wskazówek dotyczących zasobów polega na strategicznym ich łączeniu. Oto praktyczny przykład:

Wyobraź sobie stronę internetową, która używa niestandardowej czcionki hostowanej na CDN i ładuje krytyczny plik JavaScript.

  1. Preconnect do CDN: Nawiąż wczesne połączenie z CDN hostującym plik czcionki i plik JavaScript.
    <link rel="preconnect" href="https://cdn.example.com" crossorigin>
  2. Preload czcionki: Priorytetyzuj ładowanie czcionki, aby zapobiec FOUT.
    <link rel="preload" href="https://cdn.example.com/fonts/myfont.woff2" as="font" type="font/woff2" crossorigin="anonymous">
  3. Preload pliku JavaScript: Priorytetyzuj ładowanie pliku JavaScript, aby zapewnić jego dostępność, gdy jest potrzebny.
    <link rel="preload" href="https://cdn.example.com/scripts/app.js" as="script">

Narzędzia do analizy wskazówek dotyczących zasobów

Kilka narzędzi może pomóc w analizie skuteczności wskazówek dotyczących zasobów:

Częste błędy i jak ich unikać

Przyszłość wskazówek dotyczących zasobów

Wskazówki dotyczące zasobów stale ewoluują, a nowe funkcje i ulepszenia są dodawane do specyfikacji przeglądarki. Bycie na bieżąco z najnowszymi osiągnięciami w zakresie wskazówek dotyczących zasobów może pomóc w dalszej optymalizacji wydajności Twojej strony. Na przykład, modulepreload to nowsza wskazówka dotycząca zasobów, zaprojektowana specjalnie do wstępnego ładowania modułów JavaScript. Ponadto, atrybut priority dla wskazówek dotyczących zasobów pozwala określić priorytet zasobu w porównaniu z innymi zasobami. Wsparcie przeglądarek dla tych funkcji wciąż się rozwija, dlatego przed ich wdrożeniem sprawdź zgodność.

Wniosek

Wskazówki dotyczące zasobów to potężne narzędzia do optymalizacji czasu ładowania strony internetowej i poprawy doświadczenia użytkownika. Strategicznie używając preload, prefetch i preconnect, możesz proaktywnie informować przeglądarkę o krytycznych zasobach, zmniejszać opóźnienia i poprawiać postrzeganą wydajność swojej strony. Pamiętaj o priorytetyzacji krytycznych zasobów, rozsądnym stosowaniu wskazówek dotyczących zasobów i zawsze testuj wpływ wprowadzonych zmian na wydajność. Przestrzegając najlepszych praktyk opisanych w tym artykule, możesz znacząco poprawić wydajność swojej strony internetowej i zapewnić lepsze wrażenia swoim użytkownikom na całym świecie.