オルタナティブ・ブログ > 吉政忠志のベンチャービジネス千里眼 >

IT業界でベンチャービジネスの支援をしている執筆者が日々の活動ログと感じたことを、徒然なるままに書き綴っていきます。

グーグルのクラウドを支えるテクノロジー > 第102回 Googleの分散ビルドシステムのアーキテクチャー(パート2)

»

私が編集支援しているCTC教育サービスのコラム「グーグルのクラウドを支えるテクノロジー > 第102回 Googleの分散ビルドシステムのアーキテクチャー(パート2)」が公開されました。興味がある方はご覧ください。

###

はじめに
 前回に続いて、2020年に公開された論文「Scalable Build Service System with Smart Scheduling Service(PDF)」を紹介します。この論文では、Google社内で利用されている「分散ビルドシステム」のアーキテクチャーが解説されています。今回は、このシステムの具体的なアーキテクチャーを説明します。

アーキテクチャーの全体像
 Google社内の分散ビルドシステムは、その名前の通り、独立したいくつかのシステムが連携する分散型のアーキテクチャーになっています。主要なサービスは、図1のようにまとめられます。

 まずは、開発者がクライアント(Client)を用いて、スケジューリングサービス(Scheduling Service)にビルドリクエストを送信するところから処理がはじまります。リクエストを受け付けたスケジューリングサービスは、ユニークな「ビルドID」を割り当てて、クライアントに返送します。実際のビルド処理は、その背後にあるBazel WorkerとExcecutor Clusterによって非同期に行われますが、ビルドの進捗状況は、イベントサービス(Event Service)に記録されます。クライアントは、ビルドIDを用いて、該当のビルドの実行状態をイベントサービスから取得することができます。

この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai2102.html

Comment(0)