Skip to the content.

Microservice vertical pattern

Usecase

Architecture

複数の推論モデルを順列に実行するときのアーキテクチャとして直列マイクロサービス・パターンがあります。直列マイクロサービス・パターンでは、複数の機械学習モデルを別サーバで並列して配置します。それぞれに順番に(同期的に)推論リクエストを送信し、最後の推論を集計した後に推論結果を得ます。各機械学習モデル間で実行順の依存関係がある場合、直列マイクロサービス・パターンが有効です。推論モデルを個別のサーバに配置するため、各モデルの更新やサーバ障害を他のモデルやサーバから分離することが可能です。
クライアントと推論サーバの間には推論を仲介するプロキシを置くことが可能です。プロキシを配置することでデータ取得や推論順の制御をクライアントから隔離することが期待できます。推論のための入力データはプロキシで一括して収集することも、各推論サーバで取得することも可能です(Diagram2)。前者のメリットはDWHやストレージへのアクセス回数を減らし、オーバーヘッドを削減できることです。後者のメリットは各モデルや前の推論次第で取得するデータを制御できることで、複雑なフローを実現することができます。

Diagram

Diagram1

diagram1

Diagram2

diagram2

Pros

Cons

Needs consideration