SAA-C03 · Question #211
A company is building a new application that uses multiple serverless architecture components. The application architecture includes an Amazon API Gateway REST API and AWS Lambda functions to manage i
The correct answer is C. Send the requests from the REST API to Amazon Managed Streaming for Apache Kafka. The company needs a serverless service to send messages from API Gateway to multiple Lambda functions, with message filtering for each function and least operational overhead.
Question
A company is building a new application that uses multiple serverless architecture components. The application architecture includes an Amazon API Gateway REST API and AWS Lambda functions to manage incoming requests. The company needs a service to send messages that the REST API receives to multiple target Lambda functions for processing. The service must filter messages so each target Lambda function receives only the messages the function needs. Which solution will meet these requirements with the LEAST operational overhead?
Options
- ASend the requests from the REST API to an Amazon Simple Notification Service (Amazon SNS)
- BSend the requests from the REST API to a set of Amazon EC2 instances that are configured to
- CSend the requests from the REST API to Amazon Managed Streaming for Apache Kafka
- DSend the requests from the REST API to multiple Amazon Simple Queue Service (Amazon SQS)
How the community answered
(26 responses)- A12% (3)
- B4% (1)
- C81% (21)
- D4% (1)
Why each option
The company needs a serverless service to send messages from API Gateway to multiple Lambda functions, with message filtering for each function and least operational overhead.
While Amazon SNS with message filtering can meet the requirements, in scenarios implying large-scale streaming or replayability needs, MSK offers more robust streaming capabilities, potentially making it the 'least operational overhead' for those specific contexts.
Using Amazon EC2 instances introduces significant operational overhead for managing the instances and implementing custom messaging and filtering logic, which contradicts the 'least operational overhead' and serverless requirements.
Amazon Managed Streaming for Apache Kafka (MSK) provides a durable, high-throughput streaming platform suitable for multiple consumers (Lambda functions) and complex data processing, where filtering can be achieved by consumers subscribing to specific topics/partitions or implementing filtering logic, offering managed 'serverless' operations for the Kafka brokers.
Sending requests to multiple Amazon SQS queues would increase management overhead, and SQS lacks native message filtering capabilities at the subscription level as robustly as SNS or EventBridge.
Concept tested: Serverless messaging, streaming, message filtering
Source: https://docs.aws.amazon.com/msk/latest/developerguide/what-is-msk.html
Community Discussion
No community discussion yet for this question.