ジャンプ先

マイクロサービス アーキテクチャとは

マイクロサービス アーキテクチャ(多くの場合、マイクロサービスと略されます)は、アプリケーション開発におけるアーキテクチャ スタイルの一つです。マイクロサービスによって、大きなアプリケーションをそれぞれが独自の責任範囲を持つ独立した小さな部分に分割できます。単一のユーザー リクエストを処理するために、マイクロサービス ベースのアプリケーションが多数の内部マイクロサービスを呼び出して、レスポンスを作成します。

コンテナは、依存関係に気を取られることなくサービスの開発に集中できるため、マイクロサービス アーキテクチャの例として非常に適しています。最新のクラウド ネイティブ アプリケーションは、通常、コンテナを使用してマイクロサービスとして構築されます。

Google Kubernetes Engine がコンテナを使用してマイクロサービスベースのアプリケーションを作成する方法については、こちらをご覧ください。

マイクロサービス アーキテクチャの定義

マイクロサービス アーキテクチャは、サービスのコレクションとしてアプリケーションを開発するアプリケーション アーキテクチャの一種で、マイクロサービス アーキテクチャ ダイアグラムとサービスを個別に開発、デプロイ、管理するためのフレームワークを提供します。

マイクロサービス アーキテクチャ内の、各マイクロサービスは、アプリケーションの機能に対応し、独立したタスクを処理するように構築された単一のサービスです。各マイクロサービスは、シンプルなインターフェースを介して他のサービスと通信し、ビジネス上の問題を解決します。

マイクロサービス アーキテクチャの用途

マイクロサービスは一般的に、アプリケーション開発をスピードアップするために使用されます。Java を使用して構築されたマイクロサービス アーキテクチャは一般化しており、特に Spring Boot アーキテクチャで多用されています。マイクロサービスとサービス指向アーキテクチャはよく比較されます。どちらも同じ目的を持ち、モノリシック アプリケーションを小さなコンポーネントに分割しますが、それぞれアプローチが異なります。マイクロサービス アーキテクチャの例を次に示します。

ウェブサイトの移行

モノリシックなプラットフォームでホストされている複雑なウェブサイトは、クラウドベースとコンテナベースのマイクロサービス プラットフォームに移行できます。

メディア コンテンツ

マイクロサービス アーキテクチャを使用すると、画像アセットと動画アセットをスケーラブルなオブジェクト ストレージ システムに保存し、ウェブやモバイルに直接提供できます。

トランザクションと請求書

支払い処理と注文は個別のサービス ユニットとして分離できるため、請求書発行が機能しない場合でも支払いの受け入れが継続されます。

データ処理

マイクロサービス プラットフォームは、既存のモジュール化されたデータ処理サービスのクラウド サポートを拡張できます。

Google Cloud を使用すると、マネージド コンテナ サービスである Google Kubernetes Engine、またはフルマネージド型のサーバーレス サービスである Cloud Run を簡単に使用できます。

ユースケースに応じて、Cloud SQL とその他の Google Cloud プロダクトやサービスを迅速に統合して、マイクロサービス アーキテクチャをサポートすることができます。