How do you effectively handle high-volume interaction events from Genesys Cloud via EventBridge without hitting AWS Lambda concurrency limits? We are currently seeing significant throttling errors when a large number of conversations are initiated simultaneously. The EventBridge rule is configured to send events to a Lambda function that processes the data and writes it to a DynamoDB table. However, the Lambda function is being throttled, resulting in dropped events. We have increased the Lambda concurrency limit, but it seems to be a race against the volume of events. Here is a snippet of our EventBridge rule configuration:
{
"source": ["genesys.cloud"],
"detail-type": ["Conversation Event"],
"detail": {
"type": ["conversation"]
}
}
We are currently trying the following:
- Increasing the Lambda concurrency limit to 1000
- Adding a Dead Letter Queue (DLQ) to capture failed events
- Implementing retry logic in the Lambda function
- Using Step Functions to orchestrate the processing
Despite these measures, we are still experiencing dropped events. Is there a more efficient way to handle high-volume events from Genesys Cloud via EventBridge? Are there any specific configurations or best practices we should be aware of?