Omówienie odmian Chrome

Być może znasz odmiany Chrome, zwane też testami Chrome Field lub wewnętrzną nazwą kodową Chrome Finch.

Wszystkie te nazwy oznaczają to samo: mechanizm testowania nowych funkcji lub zmian w przeglądarce Chrome lub w ChromeOS, czyli systemie operacyjnym Chrome, który działa na Chromebookach.

Czym są odmiany Chrome?

Odmiany Chrome umożliwiają włączenie nowej funkcji, wyłączenie funkcji lub wypróbowanie zmiany funkcji w przypadku podzbioru użytkowników.

Nie wszystkie nowości w Chrome są wprowadzane za pomocą odmian Chrome. Jednak zespół Chrome może w razie potrzeby używać odmian Chrome. Odmiany Chrome mogą służyć do:

  • Pozwól inżynierom Chrome zachować szczególną ostrożność podczas wprowadzania określonej zmiany. Mogą one stanowić zagrożenie dla wydajności przeglądarki lub budzić inne obawy.
  • weryfikować hipotezy dotyczące zmiany lub aktualizacji; Na przykład w przypadku odsetka użytkowników w grupie wariacji Chrome zmodyfikowaliśmy parametry protokołu sieciowego QUIC, aby przyspieszyć działanie Chrome w rzeczywistych warunkach sieciowych użytkowników.
  • Kontrolowanie aktywacji funkcji okresu próbnego. Domyślnie testy origin są włączone na wszystkich stronach, które zawierają prawidłowy token testowy. W niektórych przypadkach funkcja może być niedostępna dla niektórych użytkowników, nawet jeśli odwiedzą oni stronę, która udostępnia prawidłowy token wersji próbnej.

Jak działają odmiany Chrome?

Co 30 minut na komputerze lub urządzeniu mobilnym albo za każdym razem, gdy uruchamiasz Chrome, przeglądarka wysyła do backendu Chrome żądanie pobrania pliku konfiguracyjnego Chrome Variations, czyli wartości początkowej odmian. Istnieje dedykowany serwer, który udostępnia dane początkowe odmian Chrome. Chrome wysyła do serwera żądanie HTTPS, a serwer odpowiada skompresowanym różnicowo plikiem początkowym.

Informacje o przeglądarce i systemie operacyjnym są przesyłane do backendu odmian Chrome. Wartość początkowa odmian Chrome jest przesyłana do przeglądarki, która ma wartość początkową randomizacji.

Gdy Chrome na urządzeniu zażąda pliku początkowego, poda numer wersji i system operacyjny, na którym działa. Plik zwracany przez backend Odmian Chrome służy do włączania i wyłączania funkcji oraz określania ich wariantów.

Chrome używa danych z pliku początkowego i przechowywanego lokalnie ziarna randomizacji, aby losowo przypisać przeglądarkę do grupy wersji. Przeglądarka na urządzeniu śledzi, do której grupy wariantu należy.

Wdrażanie funkcji i kanały Chrome

Jednym z najważniejszych zastosowań platformy Odmiany Chrome jest stopniowe wprowadzanie zmian lub nowych funkcji u określonego odsetka klientów Chrome. Jest to kluczowe w przypadku złożonej aplikacji, takiej jak Chrome, która ma miliardy użytkowników korzystających z tysięcy rodzajów urządzeń na wielu platformach, w dziesiątkach różnych języków, w milionach różnych aplikacji i witryn.

Chrome otrzymuje cenne opinie na podstawie użytkowania i testowania w wersjach Canary, deweloperskiej i beta. Za pomocą odmian Chrome możemy aktywować lub dezaktywować funkcje w ramach dowolnego z tych kanałów wersji. Są one jednak używane głównie przez programistów i innych specjalistów.

Użytkownicy stabilnej wersji Chrome korzystają z niej w inny sposób i w znacznie większej liczbie, dlatego zawsze musimy przeprowadzać weryfikację w kanale stabilnym. Dzięki temu możemy rozwiązywać problemy napotkane podczas normalnego korzystania z przeglądarki. Inżynierowie Chrome nie zawsze mogą przewidzieć, jak prawdziwi użytkownicy zareagują na zmiany i nowe funkcje na dużą skalę.

Odmiany Chrome umożliwiają sprawdzanie użytkowania i danych w stabilnej wersji Chrome. Dzięki pomiarowi wpływu zmian w stabilnej wersji Chrome możemy udostępniać najlepsze funkcje i tworzyć lepszą przeglądarkę, nawet jeśli wiąże się to ze złożonymi kompromisami.

Kiedy inżynierowie Chrome korzystają z odmian Chrome?

Istnieją 3 główne powody, dla których Chrome potrzebuje odmian Chrome.

Aktywowanie nowej funkcji

Używanie odmian Chrome do kontrolowania aktywacji nowej funkcji jest szczególnie przydatne w przypadku funkcji, które mogą być w jakiś sposób bardziej ryzykowne lub mogą wpływać na wydajność.

Odmiany Chrome umożliwiają nam udostępnianie nowej funkcji podzbiorowi użytkowników. Inżynierowie Chrome mogą wtedy sprawdzić różnice w wydajności lub przejrzeć inne rodzaje opinii z grupy wariantowej.

Dezaktywowanie funkcji

Odmiany Chrome mogą być używane jako mechanizm bezpieczeństwa do wyłączania funkcji, choć zdarza się to rzadko.

Na przykład nowa funkcja sieciowa może stać się celem ataku typu DoS. Odmiany Chrome można wykorzystać do szybkiego wyłączenia tej funkcji, ponieważ konfiguracja odmian Chrome jest pobierana co 30 minut, a ustawienia są aktywowane przy każdym ponownym uruchomieniu Chrome.

Z kolei aktualizacja Chrome i oczekiwanie na rozpowszechnienie nowej wersji wśród miliardów użytkowników trwałoby znacznie dłużej.

Wypróbuj zmiany w funkcji

Odmiany Chrome mogą służyć do weryfikowania zmian i aktualizacji. Możemy na przykład dostosować poziom trudności w grze z dinozaurem w Chrome, aby była bardziej atrakcyjna.

Odmiany Chrome mogą też służyć do badania długoterminowych efektów nowych funkcji. W tym celu używamy mechanizmu odmian Chrome, aby wyłączyć funkcje dla niewielkiego odsetka użytkowników, być może 1% lub mniej. Grupa kontrolna może być przydatna do sprawdzania zmian i efektów ubocznych, które stają się widoczne dopiero z czasem.

Grupa kontrolna może być szczególnie ważna w przypadku zmian w interfejsie, ponieważ użytkownicy mogą wchodzić w interakcję z nową funkcją, ale w dłuższej perspektywie mogą zachowywać się inaczej.

Na przykład wprowadziliśmy w Chrome selektor zdjęć, ale w przypadku niewielkiego odsetka użytkowników ta funkcja została tymczasowo wycofana, aby można było porównać wyniki. Wprowadziliśmy nowy selektor zdjęć na Androida dla dużej części naszych użytkowników i początkowo zaobserwowaliśmy znaczny wzrost liczby zdjęć, które ta grupa udostępniała w internecie. Jednak w ciągu 6 miesięcy, w których mieliśmy wariant kontrolny, zauważyliśmy znaczny spadek wzrostu użytkowania. Wynikało to z faktu, że dostępność nowego selektora zdjęć zachęcała witryny do dodawania atrybutu accept do elementów wejściowych plików, co poprawiało komfort wszystkich użytkowników.

Jak odmiany Chrome są używane do weryfikacji?

Jeśli włączysz ustawienie dotyczące ulepszania funkcji i działania Chrome (chrome://settings/syncSetup?search=improve), Chrome może automatycznie monitorować i wysyłać dane do backendu Chrome za pomocą analizy danych o użytkownikach (UMA).

Przykłady anonimowych statystyk użycia Chrome możesz znaleźć na stronie chromestatus.com/metrics. Są to np. odsetek wczytań stron, które korzystają z właściwości CSS lub funkcji HTML albo JavaScript.

Warianty Chrome są szczególnie przydatne do porównywania statystyk jednej grupy użytkowników z inną. Na przykład funkcja może być włączona dla niektórych użytkowników, a dla innych nie, a Chrome może porównywać dane w każdej grupie. Te dane mogą obejmować wykorzystanie pamięci, czas ładowania strony lub korzystanie z funkcji przeglądarki. Dzięki temu inżynierowie Chrome mogą porównywać wydajność lub inne dane użytkowników, którzy mają włączoną daną funkcję, użytkowników, którzy mają ją wyłączoną, oraz użytkowników, którzy korzystają z różnych wersji tej funkcji.

Badania w warunkach rzeczywistych

Każdy zestaw wariantów funkcji jest nazywany badaniem lub testem terenowym i ma określony czas trwania. Po zakończeniu badania wszyscy użytkownicy, którzy należeli do grupy z zachowaniem innym niż domyślne, otrzymują domyślne ustawienie Chrome dla danej funkcji: włączone lub wyłączone.

Większość funkcji, którymi można sterować za pomocą odmian Chrome, odpowiada flagom, które można ustawić na stronie chrome://flags. Jeśli uruchamiasz Chrome z wiersza poleceń, możesz użyć flag --enable-features--disable-features, aby skonfigurować odmiany Chrome.

Flaga --reset-variation-state wymusza zresetowanie stanu odmian Chrome na bieżącym kliencie. Oznacza to, że klient może przejść do innych grup odmian Chrome.

Odmiany Chrome dla firm

Klientom biznesowym Chrome udostępnia też zasady odmian Chrome, które umożliwiają zarządzanie odmianami Chrome. Zalecamy pozostawienie włączonych odmian Chrome, aby Chrome mógł szybko dostarczać kluczowe poprawki zabezpieczeń.

Więcej informacji