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.
Funkcja FID została niedawno udostępniona w Chrome w ramach testów 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 obszaru nazw „eksperymentalny”.
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 naciśnięcia dzwonka do momentu otwarcia drzwi. 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 być wolne.
Analiza wskaźnika FID w raporcie na temat użytkowania Chrome
Dzięki danym FID z jednomiesięcznego okresu pochodzącym z milionów źródeł mamy już mnóstwo 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 źródle 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ć zajęty 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 UX 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 źródłowy 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. percentylu.

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 JavaScript.
Przykład 2. https://www.wtfast.com

Źródło to ma 96% doświadczeń z błyskawicznym FID. Ładuje 267 KB kodu JavaScript (38. percentyl w archiwum HTTP) i przetwarza go przez 900 ms na maszynie laboratoryjnej. Pasek filmu pokazuje, że strona potrzebuje około 5 sekund na wyrenderowanie tła i około 2 sekund na wyrenderowanie treści.

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 temu, że FID jest dostępny 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 czasie wczytywania na podstawie pomiarów polowych na własnej stronie, zarejestruj się w celu wypróbowania wersji próbnej, klikając 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 dane eksperymentalne, dlatego 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.