Celem raportu na temat użytkowania Chrome jest pomoc społeczności internetowej w zrozumieniu rozkładu i ewolucji wydajności wśród rzeczywistych użytkowników. Do tej pory skupialiśmy się na wskaźnikach wyrenderowania i wczytywania stron, takich jak pierwsze wyrenderowanie treści (FCP) i Onload (OL), które pomogły nam zrozumieć, jak wizualnie działają strony dla użytkowników. Od czerwca 2018 r. testujemy nowe dane zorientowane na użytkownika, które skupiają się na interaktywności stron internetowych: opóźnieniu przy pierwszym działaniu (FID). Dzięki temu nowemu wskaźnikowi będziemy mogli lepiej zrozumieć, jak strony internetowe responsywne reagują na dane wprowadzane przez użytkowników.
Niedawno udostępniliśmy w Chrome FID w ramach wersji próbnej origin, co oznacza, że witryny mogą eksperymentować z tą nową funkcją platformy internetowej. Podobnie FID będzie dostępny w raporcie na temat użytkowania Chrome jako dane eksperymentalne, co oznacza, że będzie dostępny przez cały okres testów w ramach osobnego przedrostka „experimental”.
Jak mierzony jest wskaźnik FID
Czym dokładnie jest identyfikator FID? Oto definicja tego parametru w poście na blogu poświęconym zapowiedzi opóźnienia przy pierwszym działaniu:
Opóźnienie przy pierwszym działaniu (FID) mierzy czas, jaki upływa od pierwszej interakcji użytkownika z Twoją witryną (np. kliknięcia linku, przycisku lub użycia niestandardowego elementu sterującego JavaScript) do chwili, w której przeglądarka jest w stanie na to działanie zareagować.
To jak mierzenie czasu od momentu zadzwonienia do drzwi do ich otwarcia. Może to być spowodowane wieloma czynnikami. Może na przykład znajdować się daleko od drzwi lub nie może szybko się poruszać. Podobnie strony internetowe mogą być zajęte wykonywaniem innych zadań lub urządzenie użytkownika może działać wolno.
Analiza wskaźnika FID w raporcie na temat użytkowania Chrome
Dzięki danym FID z milionów źródeł z 1 miesiąca można już odkryć wiele interesujących statystyk. Przyjrzyjmy się kilku zapytaniom, które pokazują, jak wyodrębnić te statystyki z raportu na temat UX Chrome w BigQuery.
Zacznijmy od zapytania o odsetek szybkich FID-ów na stronie developers.google.com. Możemy zdefiniować szybkie działanie jako takie, w którym FID jest krótszy niż 100 ms. Zgodnie z zaleceniami RAIL, jeśli opóźnienie wynosi 100 ms lub mniej, działanie powinno być dla użytkownika natychmiastowe.
SELECT
ROUND(SUM(IF(fid.start < 100, fid.density, 0)), 4) AS fast_fid
FROM
`chrome-ux-report.all.201806`,
UNNEST(experimental.first_input_delay.histogram.bin) AS fid
WHERE
origin = 'https://developers.google.com'
Wyniki pokazują, że 95% doświadczeń związanych z FID w tym pochodzeniu jest postrzeganych jako natychmiastowe. Wygląda to naprawdę dobrze, ale jak wypada na tle wszystkich źródeł w zbiorze danych?
SELECT
ROUND(SUM(IF(fid.start < 100, fid.density, 0)) / SUM(fid.density), 4) AS fast_fid
FROM
`chrome-ux-report.all.201806`,
UNNEST(experimental.first_input_delay.histogram.bin) AS fid
Wyniki tego zapytania wskazują, że 84% wartości FID jest krótsze niż 100 ms. Oznacza to, że developers.google.com jest powyżej średniej.
Następnie podzielimy te dane, aby sprawdzić, czy istnieje różnica między odsetkiem szybkich FID na komputerach a na urządzeniach mobilnych. Jedna z hipotez mówi, że urządzenia mobilne mają wolniejsze wartości FID, prawdopodobnie ze względu na wolniejszy sprzęt w porównaniu z komputerami stacjonarnymi. Jeśli procesor jest mniej wydajny, może być bardziej obciążony przez dłuższy czas, co spowoduje wolniejsze działanie FID.
SELECT
form_factor.name AS form_factor,
ROUND(SUM(IF(fid.start < 100, fid.density, 0)) / SUM(fid.density), 4) AS fast_fid
FROM
`chrome-ux-report.all.201806`,
UNNEST(experimental.first_input_delay.histogram.bin) AS fid
GROUP BY
form_factor
form_factor | fast_fid |
---|---|
komputer | 96,02% |
telefon | 79,90% |
tablet | 76,48% |
Wyniki potwierdzają naszą hipotezę. Komputery mają większą kumulatywną gęstość szybkich doświadczeń FID niż telefony i tablety. Aby zrozumieć, dlaczego występują te różnice (np. wydajność procesora), konieczne byłoby przeprowadzenie testów A/B wykraczających poza zakres raportu na temat użytkowania Chrome.
Teraz, gdy już wiesz, jak sprawdzić, czy pochodzenie ma szybkie FID, przyjrzyjmy się kilku źródłom, które działają naprawdę dobrze.
Przykład 1. http://secretlycanadian.com

Ten adres domenowy ma 98% FID poniżej 100 ms. Jak to osiąga? Analizując jej budowę w WebPageTest, widzimy, że jest to strona WordPressa z dużą liczbą obrazów, ale zawiera 168 KB kodu JavaScript, który wykonuje się na naszej maszynie laboratoryjnej w czasie około 500 ms. Według archiwum HTTP nie jest to zbyt dużo kodu JavaScriptu, co stawia tę stronę w 28. percentilu.

Różowy pasek od 2,7 do 3,0 sekund to faza analizowania kodu HTML. W tym czasie strona nie jest interaktywna i wygląda niekompletnie (patrz „3,0 s” na pasku filmowym powyżej). Następnie wszystkie długie zadania, które wymagają przetworzenia, są dzielone, aby zapewnić, że wątek główny pozostanie w spoczynku. Różowe linie w wierszu 11 pokazują, jak szybko wykonywane są zadania związane z JavaScriptem.
Przykład 2. https://www.wtfast.com

To źródło ma 96% doświadczeń z błyskawicznym FID. Ładuje 267 KB kodu JavaScript (38. procentyl w archiwum HTTP) i przetwarza go przez 900 ms na maszynie laboratoryjnej. Pasek filmu pokazuje, że renderowanie tła zajmuje około 5 sekund, a treści – kolejne 2 sekundy.

Najciekawszą rzeczą w wynikach jest to, że podczas gdy wątek główny jest zajęty, nie widać nic interaktywnego przez 3–5 sekund. To właśnie wolne działanie FCP na tej stronie poprawia FID. To dobry przykład znaczenia stosowania wielu wskaźników do oceny wygody użytkowników.
Zacznij przeglądać
Więcej informacji o FID znajdziesz w tym tygodniu w odcinku The State of the Web:
Dzięki FID w raporcie na temat użytkowania Chrome możemy ustalić podstawę do pomiaru interakcji. Na podstawie tej wartości bazowej możemy obserwować zmiany w przyszłych wersjach lub porównywać poszczególne źródła. Jeśli chcesz zacząć zbierać dane o wydajności w swoim środowisku testowym, zarejestruj się w ramach testów wersji próbnej, korzystając z linku bit.ly/event-timing-ot i wybierając funkcję Czas trwania zdarzenia. I oczywiście zacznij eksplorować zbiór danych, aby uzyskać ciekawe informacje o stanie interakcji w internecie. Jest to nadal wskaźnik eksperymentalny, więc prześlij nam swoją opinię i dodaj analizę w grupie dyskusyjnej dotyczącej raportu na temat użytkowania Chrome lub na koncie @ChromeUXReport na Twitterze.