A developer is designing a real-time multiplayer gaming application where match event messages must be processed by different backend microservices. The match events must be processed in the exact order they occur per match, and duplicate messages must be avoided. The developer publishes the events to an Amazon SNS FIFO topic, which fans out to multiple Amazon SQS FIFO queues subscribed to the topic. During testing, the developer observes that the player achievements service, which runs on AWS Lambda and takes up to seconds to process certain messages, occasionally receives and processes duplicate match events. The SQS FIFO queue's visibility timeout is currently configured to seconds. Which modification should the developer make to resolve this issue?
- Increase the visibility timeout of the Amazon SQS FIFO queue to 60 seconds to ensure it exceeds the maximum processing time of the Lambda function.Cevap
- BDecrease the Lambda function's timeout to 25 seconds to force it to complete before the queue's visibility timeout is reached.
- CConvert the Amazon SQS FIFO queue to a standard queue and configure long polling with a ReceiveMessageWaitTimeSeconds parameter set to 20 seconds.
- DReconfigure the publisher to send messages to an Amazon Kinesis Data Stream instead, using a static partition key for all match events.