Describe the feature
Batch DeleteMessage on successful handler invocations to reduce both cost and API load, raising FIFO processing limits 5.5 times.
Use Case
Both ReceiveMessage and DeleteMessage count towards the 300 TPS on FIFO queues.
Under load, RecevieMessage returns 10 messages which are then processed by individual handler invocations. Each handler calls DeleteMessage on completion -a total of 11 API calls per 10 messages.
The TPS count with this workflow limits message throughput to ~270 messages per second on FIFO queues and drives up the API cost unnecessarily.
Proposed Solution
Instead of each handler calling DeleteMessage, it would be preferrable to batch the receipts for a single API call of 10 messages or [n] milliseconds (whichever happens first).
At maximum rate; message processing on a FIFO queue would increase from ~272 messages per second (300 / 11 * 10) to ~1500 (300 / 2 * 10) before being throttled.
Other Information
No response
Acknowledgements
AWS.Messaging (or related) package versions
AWS.Messaging.*
Targeted .NET Platform
all supported
Operating System and version
n/a
Describe the feature
Batch
DeleteMessageon successful handler invocations to reduce both cost and API load, raising FIFO processing limits 5.5 times.Use Case
Both
ReceiveMessageandDeleteMessagecount towards the 300 TPS on FIFO queues.Under load,
RecevieMessagereturns 10 messages which are then processed by individual handler invocations. Each handler callsDeleteMessageon completion -a total of 11 API calls per 10 messages.The TPS count with this workflow limits message throughput to ~270 messages per second on FIFO queues and drives up the API cost unnecessarily.
Proposed Solution
Instead of each handler calling
DeleteMessage, it would be preferrable to batch the receipts for a single API call of 10 messages or [n] milliseconds (whichever happens first).At maximum rate; message processing on a FIFO queue would increase from ~272 messages per second (300 / 11 * 10) to ~1500 (300 / 2 * 10) before being throttled.
Other Information
No response
Acknowledgements
AWS.Messaging (or related) package versions
AWS.Messaging.*
Targeted .NET Platform
all supported
Operating System and version
n/a