Which solution will meet these requirements?
Use an Amazon Simple Queue Service (Amazon SQS) FIFO queue between the web application server tier and the worker tier to store and forward form data.
Use an Amazon API Gateway HTTP API between the web application server tier and the worker tier to store and forward form data.
Use an Amazon Simple Queue Service (Amazon SQS) standard queue between the web application server tier and the worker tier to store and forward form data.
Use an AWS Step Functions workflow. Create a synchronous workflow between the web application server tier and the worker tier that stores and forwards form data.
Explanations:
Using an Amazon SQS FIFO queue ensures that each form is processed exactly once, as FIFO queues provide guaranteed order and exactly-once processing. This meets the requirement of not losing any data during submission.
Amazon API Gateway is primarily used for creating and managing APIs, not for storing or queuing data. It does not ensure exactly-once processing or data durability on its own, making it unsuitable for this scenario.
Amazon SQS standard queues allow for at-least-once delivery, meaning forms could potentially be processed more than once. This does not meet the requirement of processing each form exactly once.
AWS Step Functions can orchestrate workflows but are not specifically designed for queuing messages or ensuring exactly-once processing in the same manner as SQS FIFO queues. This could lead to potential issues with data processing reliability.