Chrome 변형이란 무엇인가요?

Chrome의 새 브라우저 기능 테스트 메커니즘

Chrome Variations 또는 Chrome Field Trials 또는 내부 코드명인 Chrome Finch에 대해 들어본 적이 있을 것입니다.

모두 같은 이름, 즉 Chrome 브라우저 또는 Chromebook에서 실행되는 Chrome 운영체제인 Chrome OS의 새로운 기능이나 변경사항을 테스트하는 메커니즘입니다.

Chrome 변형의 용도

Chrome 변형을 사용하면 Chrome에서 새로운 기능을 활성화하거나, 기능을 비활성화하거나, 일부 사용자를 위해 기능 변경을 시도해 볼 수 있습니다.

Chrome의 모든 기능이 Chrome 변형 메커니즘을 통해 도입되는 것은 아닙니다. 하지만 변경에 특히 주의해야 하거나 변경사항이 예상치 못한 방식으로 성능에 영향을 미칠 위험이 있는 경우 Chrome팀은 Chrome 변형을 사용할 수 있습니다. '변경'이란 Chrome 코드의 성능 향상, 브라우저의 모양 또는 작동 방식의 업데이트, 때로는 JavaScript API의 수정을 의미할 수 있습니다.

Chrome 변형을 사용하여 변경사항 또는 업데이트에 대한 가설을 검증할 수도 있습니다. 예를 들어 Chrome Variations 그룹의 일부 사용자의 경우 사용자의 실제 네트워크 조건에 맞게 Chrome의 속도를 높이기 위해 QUIC 네트워킹 프로토콜 매개변수를 조정하려고 했습니다.

Chrome 변형을 사용할 수 있는 또 다른 영역은 Chrome의 오리진 트라이얼을 사용하는 경우입니다. 기본적으로 오리진 트라이얼 기능은 유효한 체험판 토큰을 제공하는 모든 페이지에 사용 설정되어 있지만, 일부 경우 Chrome 변형이 기능 활성화를 제어하는 데 사용됩니다. 즉, 특정 사용자가 유효한 체험판 토큰을 제공하는 페이지를 방문하더라도 오리진 트라이얼 기능을 사용하지 못할 수 있습니다. 각 오리진 트라이얼에 관한 문서 및 업데이트에서는 오리진 트라이얼 기능을 활성화할 수 있는 사용자 비율에 관한 정보를 제공합니다.

Chrome 변형은 어떻게 작동하나요?

데스크톱이나 모바일에서 30분마다 또는 Chrome을 시작할 때마다 브라우저에서 변형 시드라고 하는 Chrome 변형 구성 파일을 가져오도록 Chrome 백엔드에 요청합니다. 즉, Chrome 변형 시드를 제공하는 전용 서버가 있습니다. Chrome이 서버에 HTTPS 요청을 보내면 서버가 델타 압축 시드로 응답합니다.

Chrome 변형 백엔드로 이동하는 브라우저와 운영체제에 관한 정보와 무작위 순서 지정 시드가 있는 브라우저로 이동하는 Chrome 변형 시드입니다.

기기의 Chrome에서 Chrome 변형 백엔드에 접속하여 시드 파일을 가져오면 Chrome 버전과 Chrome 버전이 실행되고 있는 운영체제에 관한 정보도 제공됩니다. Chrome 변형 백엔드에서 반환하는 파일은 기능을 사용 설정하거나 사용 중지하거나 기능의 변형을 지정하는 데 사용됩니다.

Chrome은 시드 파일의 데이터와 로컬에 저장된 무작위 순서 지정 시드를 사용하여 브라우저를 무작위로 변형 그룹에 할당합니다. 즉, Chrome 변형 백엔드의 시드 파일과 결합된 무작위 시드를 사용하여 일부 사용자를 위해 브라우저의 기능을 활성화하거나 비활성화할 수 있습니다. 기기의 브라우저는 브라우저가 속한 변형 그룹을 추적합니다.

기능 출시 및 Chrome 채널

Chrome 변형의 가장 중요한 용도 중 하나는 일정 비율의 사용자에게 변경사항이나 새로운 기능을 점진적으로 출시하는 것입니다. 이는 수십억 명의 사용자가 있고 여러 플랫폼에 수천 가지 유형의 기기가 있고 수백만 개의 앱과 웹사이트에 수십 개의 서로 다른 언어를 사용하는 복잡한 애플리케이션에서 중요합니다.

Chrome은 Chrome Canary, 개발자, 베타의 사용 및 테스트를 통해 소중한 의견을 받습니다. Chrome 변형을 사용하여 이러한 출시 채널 내의 기능을 활성화하거나 비활성화할 수 있습니다. 그러나 이러한 채널은 주로 개발자와 기타 전문가가 사용합니다. Chrome 안정화 버전 사용자는 Chrome과 다양한 방식으로 상호작용하며, 그 수가 훨씬 많습니다. 따라서 항상 공개 버전 채널을 확인해야 합니다. 이를 통해 일반적인 브라우저를 사용할 때 발생하는 문제를 해결할 수 있습니다. Chrome 엔지니어가 실제 사용자가 변경사항과 새로운 기능에 어떻게 반응할지 항상 예측할 수는 없습니다.

Chrome 변형은 이를 지원하는 중요한 메커니즘으로, 기능을 활성화하거나 비활성화한 상태에서 Chrome 안정화 버전의 사용량과 측정항목을 확인할 수 있습니다. Chrome 공개 버전의 변경사항이 미치는 영향을 측정함으로써 절충점이 복잡할 때도 가능한 한 최고의 기능을 제공하고 더 나은 브라우저를 빌드할 수 있습니다.

Chrome 엔지니어는 언제 Chrome 변형을 사용하나요?

Chrome에 Chrome 변형이 필요한 데는 크게 세 가지 이유가 있습니다.

새 기능 활성화

Chrome 변형을 사용하여 새로운 기능의 활성화를 제어하는 기능은 어떤 식으로든 더 위험하거나 성능에 영향을 줄 수 있는 모든 항목에 특히 유용합니다.

Chrome 변형을 사용하면 일부 사용자에게 새로운 기능을 출시할 수 있습니다. 그런 다음 Chrome 엔지니어가 성능 차이를 확인하거나 변형 그룹의 다른 유형의 의견을 살펴볼 수 있습니다.

기능 비활성화

Chrome 변형은 드물지만 기능을 사용 중지하기 위한 안전 메커니즘으로 사용할 수 있습니다.

예를 들어 새로운 네트워킹 기능이 서비스 거부 공격을 받을 수 있습니다. Chrome 변형을 사용하면 이러한 기능을 빠르게 사용 중지할 수 있습니다. Chrome 변형 구성은 30분마다 다운로드되고 Chrome을 다시 시작할 때마다 설정이 활성화되기 때문입니다. 반면에 Chrome을 업데이트하고 새 버전이 수십억 명의 사용자에게 전파될 때까지 기다리면 속도가 훨씬 느립니다.

지형지물 변경 시도

마지막으로 Chrome 변형을 사용하여 변경사항 및 업데이트를 확인할 수 있습니다. 예를 들어 Chrome 오프라인 공룡 게임의 난이도를 미세 조정하여 상호작용이 더 재미있게 느껴지도록 할 수 있습니다.

Chrome 변형을 사용하여 새로운 기능의 장기적인 효과를 연구할 수도 있습니다. 이를 위해 Chrome 변형 메커니즘을 사용하여 소수의 사용자(1% 이하)의 기능을 보류합니다. 홀드백 그룹은 시간이 지남에 따라 표시되는 변경사항과 부작용을 확인하는 데 유용할 수 있습니다.

홀드백 그룹은 사용자가 새 기능과 상호작용할 가능성이 높지만 장기적으로는 다르게 동작할 수 있는 사용자 인터페이스 변경사항에 특히 중요할 수 있습니다.

예를 들어 Chrome에서 사진 선택 도구 기능을 출시했지만 결과를 비교하기 위해 이 기능을 소수의 사용자로부터 일시적으로 보류했습니다. Google에서는 높은 비율의 사용자에게 새로운 Android 사진 선택 도구를 출시했으며, 처음에는 이 그룹이 웹에서 공유하는 이미지 수가 크게 증가했습니다. 그러나 홀드백 변화를 적용한 6개월 동안 사용량 상승도가 크게 감소했습니다. 이는 새로운 사진 선택 도구를 사용할 수 있게 됨에 따라 사이트에서 파일 입력 요소에 수락 속성을 추가하도록 권장했기 때문에 모든 사용자에게 더 나은 환경을 제공할 수 있었습니다.

Chrome 변형은 확인에 어떻게 사용되나요?

Chrome의 기능 및 성능 개선에 도움이 되는 설정이 사용 설정(chrome://settings/syncSetup?search=improve)되면 Chrome은 사용자 측정항목 분석 (UMA)이라는 메커니즘을 사용하여 측정항목을 자동으로 모니터링하고 Chrome 백엔드로 전송할 수 있습니다. chromestatus.com/metrics에서 익명처리된 Chrome 사용 통계의 예를 확인할 수 있습니다. 예를 들어 CSS 속성이나 HTML 또는 자바스크립트 기능을 사용하는 페이지 로드 비율을 확인할 수 있습니다.

Chrome 변형은 한 사용자 그룹의 통계를 다른 사용자 그룹과 비교할 때 특히 유용합니다. 예를 들어 일부 사용자에 대해서만 기능을 사용 설정할 수 있으며 Chrome은 각 그룹의 측정항목을 비교할 수 있습니다. 이러한 측정항목에는 메모리 사용량, 페이지 로드 시간 또는 브라우저 기능 사용량이 포함될 수 있습니다. 이를 통해 Chrome 엔지니어는 기능을 사용 설정한 사용자, 사용 중지한 사용자, 기능 변형이 다른 사용자 간에 성능이나 기타 측정항목을 비교할 수 있습니다.

Chrome 변형 필드 트라이얼

특성의 각 변형 집합을 연구 또는 필드 시험이라고 하며, 각 변형에는 고정 기간이 있습니다. 특정 기능에 대한 연구가 종료되면 기본이 아닌 행동 그룹에 포함된 모든 사용자에게 해당 기능의 기본 Chrome 설정(사용 설정 또는 사용 중지)이 적용됩니다.

Chrome 변형에서 제어할 수 있는 대부분의 기능은 chrome://flags 페이지에서 설정할 수 있는 플래그에 해당합니다. 또는 명령줄에서 Chrome을 실행하는 경우 --enable-features--disable-features 플래그를 사용하여 Chrome 변형을 구성할 수 있습니다.

엔터프라이즈용 Chrome 변형

기업 고객을 위해 Chrome에서는 Chrome 변형을 관리할 수 있도록 ChromeVariations 정책도 제공합니다. 물론 Chrome에서 중요한 보안 수정사항을 신속하게 제공할 수 있도록 Chrome 변형을 사용 설정된 상태로 두는 것이 좋습니다.

자세히 알아보기