SAP-C02新しいソリューションのための設計HARD単一選択

ある企業が新しいマイクロサービスアーキテクチャを AWS 上に設計しています。10 個のマイクロサービスが相互に通信し、一部は同期 REST API、一部は非同期イベントドリブンで連携します。サービス間の依存を疎結合に保ち、一つのサービスが障害になっても他のサービスに影響が波及しないよう設計する必要があります。また、イベントのスキーマ管理と後方互換性の確保が重要です。最も適切なアーキテクチャはどれですか?

  1. A. 同期通信には Amazon API Gateway と AWS Lambda、非同期通信には Amazon EventBridge を使用する。EventBridge Schema Registry でイベントスキーマを管理し、後方互換性を確保する。Circuit breaker パターンには AWS App Mesh またはサービス側での実装を使用する
  2. B. すべての通信を Amazon Kinesis Data Streams に統一し、すべてのサービスをコンシューマーとしてストリームを購読させる
  3. C. Direct VPC 間通信(PrivateLink なし)でマイクロサービスを直接接続し、Elastic Load Balancer を各サービスの前段に配置する
  4. D. すべてのマイクロサービス間通信を Amazon SQS と SNS の組み合わせ(SNS fanout pattern)で非同期化し、サービスメッシュを廃止する
解答と解説を見る

正解: A

同期 REST API には API Gateway + Lambda、非同期イベントドリブンには EventBridge の組み合わせが AWS のベストプラクティスです。EventBridge Schema Registry によりイベントのスキーマを中央管理し、スキーマバージョン管理で後方互換性を確保できます。App Mesh によるサービスメッシュでサーキットブレーカーパターンを実装し、障害の波及を防止します。 D: SQS + SNS はメッセージングには有効ですが、スキーマ管理機能がなく、後方互換性の確保が課題になります。また、EventBridge の方がイベント駆動アーキテクチャに適した機能(フィルタリング、スキーマレジストリ等)を持ちます。 B: すべての通信を Kinesis に統一することは、リクエスト-レスポンス型の同期 REST API パターンに適していません。シンプルな同期通信をストリームで実装することはオーバーエンジニアリングです。 C: サービス間の直接 VPC 通信は疎結合の原則に反し、サービスが互いの IP アドレスやエンドポイントを直接知っている必要があり、依存が強まります。

▸ この試験を本気で演習する(全150問・無料)