Что такое варианты Chrome?

Механизм Chrome для тестирования новых функций браузера.

Возможно, вы слышали о вариациях Chrome или полевых испытаниях Chrome — или, может быть, даже о внутреннем кодовом названии Chrome Finch.

Все это названия одного и того же: механизма тестирования новых функций или изменений в браузере Chrome или Chrome OS, операционной системе Chrome, которая работает на Chromebook.

Для чего используются варианты Chrome?

Вариации Chrome позволяют Chrome активировать новую функцию, деактивировать функцию или опробовать изменение функции для определенной группы пользователей.

Не все в Chrome представлено через механизм вариаций Chrome. Однако команда Chrome может использовать варианты Chrome всякий раз, когда нам нужно быть особенно осторожными при внесении изменений или когда существует риск того, что изменение может повлиять на производительность так, как мы не ожидали. «Изменение» может означать повышение производительности кода Chrome, обновление внешнего вида или функционирования браузера, а иногда даже модификацию API JavaScript.

Вариации Chrome также можно использовать для проверки гипотезы об изменении или обновлении. Например, для определенного процента пользователей в группе «Вариации Chrome» мы попытались настроить параметры сетевого протокола QUIC , чтобы сделать Chrome быстрее в соответствии с реальными условиями сети пользователей.

Другая область, где вы можете столкнуться с вариациями Chrome, — это работа с исходными пробными версиями Chrome. По умолчанию функция пробной версии Origin включена на всех страницах, на которых имеется действительный токен пробной версии, но в некоторых случаях варианты Chrome используются для управления активацией функции. Это означает, что функция пробной версии Origin может быть недоступна некоторым пользователям, даже если они посещают страницу, на которой имеется действительный токен пробной версии. Информация о доле пользователей, имеющих право на активацию функции исходной пробной версии, предоставляется вместе с документацией и обновлениями для каждой исходной пробной версии.

Как работают варианты Chrome?

Каждые 30 минут на настольном компьютере или мобильном устройстве или каждый раз при запуске Chrome браузер отправляет запрос серверной части Chrome на получение файла конфигурации вариантов Chrome, который известен как начальное число вариантов. Другими словами, существует выделенный сервер для предоставления семян вариаций Chrome. Chrome отправляет HTTPS-запрос серверу, и сервер отвечает дельта-сжатым начальным значением.

Информация о браузере и операционной системе, поступающая в серверную часть Chrome Variations; Начальное значение вариаций Chrome передается в браузер, который имеет начальное значение рандомизации.

Когда Chrome на вашем устройстве обращается к серверной части Chrome Variations для получения исходного файла, он также предоставляет информацию о версии Chrome и операционной системе, в которой он работает. Файл, возвращаемый серверной частью Chrome Variations, используется для включения или отключения функций или указания вариантов функции.

Chrome использует данные из начального файла и локально хранимое начальное значение рандомизации для случайного назначения браузера группе вариантов. Другими словами, начальное значение рандомизации в сочетании с исходным файлом из серверной части Chrome Variations можно использовать для активации или деактивации функций браузера для определенной группы пользователей. Ваш браузер на вашем устройстве отслеживает, к какой группе вариантов он принадлежит.

Внедрение функций и каналы Chrome

Одним из наиболее важных применений вариаций Chrome является постепенное внедрение изменений или новых функций среди определенного процента пользователей. Это крайне важно для такого сложного приложения, как Chrome, у которого миллиарды пользователей, тысячи типов устройств на разных платформах, использующие десятки разных языков для миллионов различных приложений и веб-сайтов.

Chrome получает ценные отзывы об использовании и тестировании Chrome Canary, Dev и бета-версии. Мы можем использовать варианты Chrome для активации или деактивации функций в любом из этих каналов выпуска . Однако этими каналами в основном пользуются разработчики и другие специалисты. Пользователи Chrome Stable взаимодействуют с Chrome по-разному, и их гораздо больше, поэтому нам всегда необходимо проверять канал Stable. Это позволяет нам устранять любые проблемы, возникающие при обычном использовании браузера. Инженеры Chrome не всегда могут предсказать, как реальные пользователи отреагируют на изменения и новые функции в любом масштабе.

Вариации Chrome — это важнейший механизм, который помогает в этом, позволяя проверять использование и показатели Chrome Stable с активированной или деактивированной функцией. Измеряя влияние изменений в Chrome Stable, мы можем предоставить лучшие функции и создать лучший браузер — даже если компромиссы сложны.

Когда инженеры Chrome используют варианты Chrome?

Есть три основные причины, по которым Chrome нуждается в вариациях Chrome.

Активировать новую функцию

Использование вариаций Chrome для обеспечения контроля над активацией новой функции особенно полезно для всего, что может быть более рискованным или может повлиять на производительность.

Вариации Chrome позволяют нам внедрить новую функцию для определенной группы пользователей. Затем инженеры Chrome могут проверить различия в производительности или просмотреть другие типы отзывов от группы вариантов.

Деактивировать функцию

Вариации Chrome можно использовать в качестве механизма безопасности для отключения функции, хотя это случается редко.

Например, новая сетевая функция может стать объектом атаки типа «отказ в обслуживании». Варианты Chrome можно использовать для быстрого отключения такой функции, поскольку конфигурация вариантов Chrome загружается каждые 30 минут, а настройки активируются при каждом перезапуске Chrome. Напротив, обновление Chrome и ожидание распространения новой версии среди миллиардов пользователей будет намного медленнее.

Попробуйте изменить функцию

Наконец, варианты Chrome можно использовать для проверки изменений и обновлений. Например, мы могли бы точно настроить сложность игры Chrome Offline Dino, чтобы взаимодействие было более увлекательным.

Вариации Chrome также можно использовать для изучения долгосрочных последствий новых функций. Это делается с помощью механизма вариаций Chrome, позволяющего удерживать функции для небольшой части пользователей, возможно, 1% или меньше. Группа сдерживания может быть полезна для проверки изменений и побочных эффектов, которые становятся заметными только со временем.

Группа сдерживания может быть особенно важна для изменений пользовательского интерфейса, когда пользователи, скорее всего, будут взаимодействовать с функцией, когда она новая, но могут вести себя по-другому в долгосрочной перспективе.

Например, мы запустили функцию выбора фотографий в Chrome, но эта функция была временно закрыта для небольшого процента пользователей, чтобы сравнить результаты. Мы предоставили новую программу Android Photo Picker большому числу наших пользователей и поначалу заметили значительное увеличение количества изображений, которыми группы делятся в Интернете. Однако за шесть месяцев, в течение которых у нас был вариант удержания, мы увидели, что рост использования значительно снизился. Это произошло потому, что наличие нового средства выбора фотографий побудило сайты добавлять атрибут Accept к элементам ввода файла, что привело к улучшению работы всех пользователей.

Как варианты Chrome используются для проверки?

Если включен параметр, помогающий улучшить функции и производительность Chrome ( chrome://settings/syncSetup?search=improve ), Chrome может автоматически отслеживать и отправлять метрики на серверную часть Chrome, используя механизм, известный как анализ пользовательских метрик (UMA). Вы можете просмотреть примеры анонимной статистики использования Chrome на странице chromestatus.com/metrics , например, процент загрузок страниц, использующих свойство CSS или функцию HTML или JavaScript.

Варианты Chrome особенно полезны для сравнения статистики одной группы пользователей с другой. Например, функция может быть включена для некоторых пользователей, а не для других, и Chrome может сравнивать показатели для каждой группы. Эти показатели могут включать использование памяти, время загрузки страницы или использование функции браузера. Это позволяет инженерам Chrome сравнивать производительность или другие показатели пользователей, у которых функция включена, пользователей, у которых эта функция отключена, или пользователей с различными вариантами функций.

Полевые испытания вариантов Chrome

Каждый набор вариантов функции называется исследованием или полевыми испытаниями , и каждый из них имеет фиксированную продолжительность. После завершения исследования функции все пользователи, включенные в группу поведения, отличного от стандартного, получают настройку Chrome по умолчанию для этой функции: либо включенную, либо отключенную.

Большинство функций, которыми можно управлять с помощью вариантов Chrome, соответствуют флагу, который можно установить на странице chrome://flags . Альтернативно, если вы запускаете Chrome из командной строки , вы можете использовать флаги --enable-features и --disable-features для настройки вариантов Chrome.

Варианты Chrome для предприятий

Корпоративным клиентам Chrome также предоставляет политику ChromeVariations для управления вариантами Chrome. Конечно, мы рекомендуем оставить варианты Chrome включенными, чтобы Chrome мог быстро предоставлять важные исправления безопасности.

Узнать больше