exam questions

Exam AWS Certified Solutions Architect - Professional All Questions

View all questions & answers for the AWS Certified Solutions Architect - Professional exam

Exam AWS Certified Solutions Architect - Professional topic 1 question 410 discussion

An e-commerce company is revamping its IT infrastructure and is planning to use AWS services. The company's CIO has asked a Solutions Architect to design a simple, highly available, and loosely coupled order processing application. The application is responsible for receiving and processing orders before storing them in an Amazon DynamoDB table. The application has a sporadic traffic pattern and should be able to scale during marketing campaigns to process the orders with minimal delays.
Which of the following is the MOST reliable approach to meet the requirements?

  • A. Receive the orders in an Amazon EC2-hosted database and use EC2 instances to process them.
  • B. Receive the orders in an Amazon SQS queue and trigger an AWS Lambda function to process them.
  • C. Receive the orders using the AWS Step Functions program and trigger an Amazon ECS container to process them.
  • D. Receive the orders in Amazon Kinesis Data Streams and use Amazon EC2 instances to process them.
Show Suggested Answer Hide Answer
Suggested Answer: B 🗳️

Comments

Chosen Answer:
This is a voting comment (?). It is better to Upvote an existing comment if you don't have anything to add.
Switch to a voting comment New
chaudh
Highly Voted 3 years, 9 months ago
Looks like B, C and D are correct. But I prefer B since SQS provides reliability & Lambda gives scalability. C (an ECS container) & D (EC2 instances) don't give HA & scale.
upvoted 18 times
...
donathon
Highly Voted 3 years, 9 months ago
A: It’s no reliable even with auto-scaling, it may not be able to meet sudden demand unless there are very good effort done on a schedule to spin up instances ahead of the demand. Still, it’s difficult to know how much you need. B: SQS suitable and reliable initially. But remember that this is an order processing application SQS is sceptical to duplicates and you would not want duplicates in order processing. You need to choose FIFO SQS which is not in the answer. C: Step Functions replaces SWF but a workflow is not needed here. What we need is a reliable storage like SQS to store the huge surge in orders that may occur during campaigns. D: Kinesis Streams recently was just able to auto scale to demand so this should be it. https://aws.amazon.com/blogs/big-data/scaling-amazon-kinesis-data-streams-with-aws-application-auto-scaling/ https://aws.amazon.com/kinesis/data-streams/faqs/
upvoted 8 times
donathon
3 years, 9 months ago
Additional info: Q: How does Amazon Kinesis Data Streams differ from Amazon SQS? Amazon Kinesis Data Streams enables real-time processing of streaming big data. It provides ordering of records, as well as the ability to read and/or replay records in the same order to multiple Amazon Kinesis Applications. The Amazon Kinesis Client Library (KCL) delivers all records for a given partition key to the same record processor, making it easier to build multiple applications reading from the same Amazon Kinesis data stream (for example, to perform counting, aggregation, and filtering). https://aws.amazon.com/kinesis/data-streams/faqs/ https://aws.amazon.com/blogs/big-data/unite-real-time-and-batch-analytics-using-the-big-data-lambda-architecture-without-servers/
upvoted 1 times
oatif
3 years, 9 months ago
Amazon Kinesis is differentiated from Amazon's Simple Queue Service (SQS) in that Kinesis is used to enable real-time processing of streaming big data. SQS, on the other hand, is used as a message queue to store messages transmitted between distributed application components
upvoted 6 times
...
...
StelSen
3 years, 8 months ago
SQS sceptical to duplicates? When I receive order I create a message in SQS and I can process it from Lambda. Where this duplicates issues comes from? Even if duplicates occurs due to app functionality, the issue will be at Kinesis as well. Also FIFO is not required. The order of the ORDER is not an issue as long as the order gets processed. If ordering is an issue, this will be problem in Kinesis as well, I think.
upvoted 2 times
...
...
superuser784
Most Recent 2 years, 8 months ago
Key here is "loosely coupled", its a common pattern to use a Queue to decouple apps, in this casa SQS is the best choice, so the answer is B.
upvoted 3 times
...
jj22222
3 years, 3 months ago
Selected Answer: B
B looks right
upvoted 2 times
...
cldy
3 years, 6 months ago
B is correct.
upvoted 1 times
...
AzureDP900
3 years, 7 months ago
B is right
upvoted 1 times
...
andylogan
3 years, 8 months ago
It's B
upvoted 1 times
...
Kopa
3 years, 8 months ago
keyword loosely coupled, im going for B
upvoted 1 times
...
AWS_Noob
3 years, 8 months ago
B, major key word there being Loosely coupled
upvoted 1 times
...
Kopa
3 years, 8 months ago
I go with B
upvoted 1 times
...
macshild
3 years, 8 months ago
the answer is B
upvoted 1 times
...
WhyIronMan
3 years, 8 months ago
I'll go with B
upvoted 1 times
...
Pupu86
3 years, 8 months ago
I would seek out the keywords such as HA, Sporadic (irregular intervals) and loosely coupled and determine suitable services as SQS, Lamda, Lamda@edge to be used so my answer is B
upvoted 1 times
...
Kian1
3 years, 8 months ago
Ans B 100%
upvoted 2 times
...
LoganIsh
3 years, 8 months ago
B is the answer the key word is that processing order thus SQS is the real deal here..
upvoted 2 times
...
Ebi
3 years, 8 months ago
B is my choice For those who picked D, although technically possible but what AWS is evaluating you as well is to pick the right service for the right use case. Kenisis is not the right choice for queues, it is best for streaming
upvoted 7 times
...
bnagaraja9099
3 years, 8 months ago
Step functions are typical use cases for Order processing where it may take different flows and manual workflows. But in the scope of this question to receive and store in async fashion, SQS is good enough for "simple" requirement. I ll go with B
upvoted 1 times
...
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.

Upvoting a comment with a selected answer will also increase the vote count towards that answer by one. So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.

SaveCancel
Loading ...