Chrome という製品を考えると、ユーザーがインストールするブラウザのことだけを思い浮かべるかもしれません。しかし、舞台裏では、Chrome には広範なバックエンドのフリートが存在します。そのうちの1つが Chrome 最適化ガイドサービスです。このサービスは Chrome のユーザーエクスペリエンス戦略の重要な基盤を形成し、ユーザーにとって重要なパスで動作し、Go で実装されています。
Chrome 最適化ガイドサービスは、ページロード時にどのような最適化を実行できるか、またいつ最も効果的に適用できるかについて、インストールされたブラウザにヒントを提供することで、Google の力を Chrome にもたらすように設計されています。リアルタイムサーバーとバッチログ分析を組み合わせたものです。
Chrome のすべての Lite モードユーザーは、以下のメカニズムを通じてサービス経由でデータを受信します。すなわち、地理的に有名なサイトのヒントを提供するデータブロブのプッシュ、特定のユーザーが頻繁に訪れるホストのヒントを取得するための Google サーバーへのチェックイン、およびデバイスにヒントがまだないページロードに対するオンデマンドです。Chrome 最適化ガイドサービスが突然消失した場合、ユーザーはページロードの速度とウェブ閲覧中に消費されるデータ量に劇的な変化を感じるかもしれません。
「
Go は私たちにとって成功だったので、今後も適切な場所で使い続ける予定です
Chrome エンジニアリングチームがこのサービスの構築を開始したとき、Go に慣れているメンバーはごくわずかでした。チームのほとんどは C++ に精通していましたが、C++ サーバーを立ち上げるのに必要な複雑な定型コードが多すぎると感じました。チームは「そのシンプルさ、迅速な立ち上げ、エコシステムのおかげで、Go を学ぶことにかなり意欲的だった」そして「その冒険心は報われた」と語っています。何百万ものユーザーが Chrome の体験を向上させるためにこのサービスに依存しており、Go の選択は小さな決断ではありませんでした。これまでの経験から、チームは「Go は私たちにとって成功だったので、今後も適切な場所で使い続ける予定です」とも語っています。
Chrome 最適化ガイドチームに加えて、Google 全体のエンジニアリングチームが開発プロセスに Go を採用しています。Core Data Solutions および Firebase Hosting チームが Go を使用して、高速で信頼性が高く、効率的なソフトウェアを大規模に構築する方法についてお読みください。
編集者注: Go チームは、この物語への貢献に対してソフィー・チャンに感謝します。
Chrome について
Google Chrome は、Google の賢さが組み込まれた、これまで以上にシンプルで安全、そして高速なウェブブラウザです。
このケーススタディでは、Chrome 最適化ガイドチームが Go をどのように試行し、迅速に習得し、今後 Go を使用する計画について語りました。