2025 年 3 月 27 日より、AOSP のビルドとコントリビューションには aosp-main
ではなく android-latest-release
を使用することをおすすめします。詳細については、AOSP の変更をご覧ください。
ホスト コントローラのアーキテクチャ
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
VTS テスト フレームワークのアーキテクチャは、クラウドベースのテスト処理サービスと統合されています。VTS ホスト コントローラは、ホストマシン上で動作し、テストハーネス(TradeFed など)のインスタンスを制御します(下図を参照)。
図 1. VTS ホスト コントローラのアーキテクチャ
コントローラは、Google App Engine(GAE)インスタンスとして実行されているクラスタ コマンダーからコマンドを取得し、コマンドと応答をクラスタ コマンダーとテストハーネス インスタンスの間でリレーします。
このアーキテクチャには次のような利点があります。
- テストハーネス インスタンスから切り離されているため、異なる種類のテストハーネスの制御が可能で、堅牢性もより優れています。ホスト制御ロジックがテストハーネスに組み込まれいてる代替設計ではエラーの伝播がブロックされず、やや堅牢性に劣ります。
- pull ベースのコマンド アンド コントロール(C&C)モデルを使用しているため、さまざまな種類のクラウド側のクラスタ コマンダーはもちろん、ファイアウォールの内側に存在するホストとも連携(内向き接続)できます。代替設計(push ベースの C&C モデル)では、ホスト コントローラ インスタンスがプライベート ネットワークのホスト コンピュータ上にある場合に、クラウド コマンダーからインスタンスへのアクセスが許可されない可能性があります。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-03-06 UTC。
[null,null,["最終更新日 2025-03-06 UTC。"],[],[],null,["# Host controller architecture\n\nThe architecture of VTS test framework integrates with its cloud-based test\nserving service. A VTS host controller runs on a host machine and controls a\ntest harness (for example, Tradefed) instance as shown below:\n\n\n**Figure 1.** VTS host controller architecture.\n\n\nThe controller pulls commands from a cluster commander running as a Google App\nEngine (GAE) instance, then relays commands and responses between its cluster\ncommander and the test harness instance.\n\nThis architecture includes the following advantages:\n\n- Because it's **decoupled from any test harness instance**, it can control different types of test harnesses and is more robust. The alternative design (embedding the host control logic in a test harness) does not block errors from propagating.\n- Because it uses a **pull-based command-and-control (C\\&C)\n model**, it can work with different types of cloud-side cluster commanders as well as hosts that exist behind a firewall (for ingress connections). The alternative design (push-based C\\&C model) might not allow a cloud commander to access host controller instances that exist on host computers in a private network."]]