マイクロサービス

全体構成マイクロサービス設計パターンを採用した高可用性システムです。3つの独立したサービス(User Service、Order Service、Notification Service)が協調して動作します。
グローバルサービスRoute 53(DNS解決)
リクエスト処理API Gateway(パスごとのエンドポイント設定)
負荷分散
 Private Subnet
内部ALB(負荷分散、パスベースルーティング)
User Service
 Private Subnet(App)
ECS × 2(各AZに配置)
Order Service
 Private Subnet(App)
ECS × 2(各AZに配置)
Notification Service
 リージョンサービス
SNS(イベント受信)
SQS(メッセージ処理)
Lambda(非同期で通知配信)
Notification Service専用 DynamoDB(通知履歴)
データベース
  Private Subnet(DB)(RDS:各AZに配置)
User Service専用 RDS(Primary): 書込・読取
User Service専用 RDS(Standby): F/O用
Order Service専用 RDS(Primary): 書込・読取
Order Service専用 RDS(Standby): F/O用
表1.全体構成(マイクロサービス:ECS×2+Lambda)