マイクロサービス アーキテクチャの設計
マイクロサービスは、回復力があり、拡張性が高く、独立してデプロイ可能で、迅速に進化できるクラウド アプリケーションを構築するための一般的なアーキテクチャ スタイルとなっています。 ただし、単なる流行語ではなく、マイクロサービスでは、アプリケーションの設計と構築に別のアプローチが必要です。
この一連の記事では、Azure でマイクロサービス アーキテクチャを構築する方法について説明します。 取り上げるトピックは次のとおりです。
前提条件
これらの記事を読む前に、まず次の作業を行います。
- マイクロサービス アーキテクチャの概要。 マイクロサービスの利点と課題、およびこのスタイルのアーキテクチャを使用するタイミングについて説明します。
- ドメイン分析を使用してマイクロサービスをモデル化する。 マイクロサービスをモデル化するためのドメイン駆動型アプローチについて説明します。
参照実装
マイクロサービス アーキテクチャのベスト プラクティスを示すために、ドローン配信アプリケーションと呼ぶ参照実装を作成しました。 この実装は、Azure Kubernetes Service (AKS) を使用して Kubernetes で実行されます。 リファレンス実装は GitHub で確認できます。
このアーキテクチャの Visio ファイルをダウンロードします。
シナリオ
Fabrikam, Inc. はドローン配送サービスを開始しています。 同社はドローン航空機の艦隊を管理しています。 企業がサービスに登録すると、ユーザーは、ドローンで商品を集荷して配送するように依頼できます。 顧客が集荷のスケジュールを設定すると、バックエンド システムによってドローンが割り当てられ、推定配送時刻がユーザーに通知されます。 配送の進行中、顧客は継続的に更新された ETA を使用してドローンの場所を追跡できます。
このソリューションは、航空宇宙および航空機業界に最適です。
このシナリオには、かなり複雑なドメインが含まれます。 ビジネス上の懸念事項には、ドローンのスケジュール設定、パッケージの追跡、ユーザー アカウントの管理、履歴データの格納と分析などがあります。 さらに、Fabrikam は迅速に市場に投入し、迅速に反復し、新しい機能と機能を追加したいと考えています。 アプリケーションは、高いサービス レベル目標 (SLO) でクラウド規模で動作する必要があります。 Fabrikam では、システムのさまざまな部分に、データ ストレージとクエリの要件が非常に異なることも想定されています。 これらすべての考慮事項により、Fabrikam はドローン配送アプリケーションのマイクロサービス アーキテクチャを選択します。
注
マイクロサービス アーキテクチャとその他のアーキテクチャ スタイルの選択に関するヘルプについては、 Azure アプリケーション アーキテクチャ ガイドを参照してください。
このリファレンス実装では、 Azure Kubernetes Service (AKS) で Kubernetes を使用します。 ただし、アーキテクチャに関する大まかな決定事項と課題の多くは、任意のコンテナー オーケストレーターに適用されます。
次のステップ
関連リソース
- マイクロサービスのサービス間通信を設計する
- マイクロサービス 用の API を設計する
- マイクロサービス で API ゲートウェイを使用する
- マイクロサービスのデータに関する考慮事項
- マイクロサービス の設計パターンの