Q1 — AWS SAA-C03 第12章

第 1/100 問 | ← 第12章

Q801. ある会社が、サーバーレスアーキテクチャを採用した新アプリケーションを開発しています。このアーキテクチャは、Amazon API Gateway の REST API と、受信リクエストを処理する AWS Lambda 関数で構成されます。同社は、API Gateway REST API から受信したメッセージを、複数のターゲット Lambda 関数に送信できるサービスを追加したいと考えています。また、このサービスにはメッセージフィルタリング機能が必要であり、各ターゲット Lambda 関数が自身に必要なメッセージのみを受信できるようにしなければなりません。これらの要件を満たし、かつ運用オーバーヘッドが最小となるソリューションはどれですか?

正解: B. API Gateway REST API からのリクエストを Amazon EventBridge に送信します。EventBridge を設定して、ターゲット Lambda 関数を呼び出すようにします。

解説

API Gateway REST API から受信したメッセージを、複数のターゲット Lambda 関数へ送信し、メッセージのフィルタリング機能を備え、かつ運用オーバーヘッドを最小限に抑えるには、以下の選択肢が最も適しています: B. API Gateway REST API からのリクエストを Amazon EventBridge に送信し、EventBridge を設定してターゲット Lambda 関数を呼び出す。 Amazon EventBridge は、さまざまなソースからイベントを収集・ルーティングするサーバーレスなイベントバスサービスです。API Gateway REST API からのリクエストを EventBridge に送信することで、指定したフィルタリング条件に基づき、EventBridge のルールを使ってメッセージを対象の Lambda 関数へルーティングできます。これにより、追加のサービスを導入することなく、必要なメッセージフィルタリング機能を実現できます。 他の選択肢が不適切な理由は以下の通りです: A. SNS トピックにリクエストを送信し、SQS キューをサブスクライブさせる方法:この方法は非同期処理やデカップリングには有効ですが、SNS および SQS という追加のサービスを導入する必要があり、さらに Lambda 関数が SQS キューをポーリングする仕組みも必要となるため、EventBridge を用いる場合と比較して運用負荷と複雑さが増します。 C. Amazon MSK を経由してメッセージを配信する方法:Amazon MSK はマネージド型の Apache Kafka サービスであり、本ユースケースでは過剰な設計となります。EventBridge と比べて、導入・管理の複雑さと運用負荷が高くなります。 D. リクエストを複数の SQS キューに直接送信し、Lambda 関数がそれぞれのキューをポーリングする方法:この方法でも SQS という追加サービスが必要となり、各 Lambda 関数が複数のキューを管理・ポーリングする必要があります。これにより、運用負荷とシステムの複雑さが増し、EventBridge を用いる方法よりも非効率です。 したがって、API Gateway REST API から受信したメッセージを複数のターゲット Lambda 関数へフィルタリング機能付きで送信し、かつ運用オーバーヘッドを最小限に抑えるには、選択肢 B が最も適したソリューションです。