Concurrency Controller

A Workflow that uses DynamoDB to implement a semaphore

This application demonstrates how to implement control concurrency in your distributed system. This helps you avoid overloading limited resources in your serverless data processing pipeline or reduce availability risk by controlling velocity in your IT automation workflows.
With this sample application, you implement a distributed semaphore using AWS Step Functions and Amazon DynamoDB to control concurrent invocations of a function in AWS Lambda.

Launch Stack
< Back to all workflows

GitHub icon View this workflow on GitHub


Clone repo

git clone https://github.com/aws-samples/aws-stepfunctions-examples/tree/main/sam/app-control-concurrency-with-dynamodb/cd step-functions-workflows-collection/app-control-concurrency-with-dynamodb/

Deploy

sam deploy --guided


Testing

See the GitHub repo for detailed testing instructions.

Cleanup

1. Delete the stack: sam delete --stack-name STACK_NAME.
2. Confirm the stack has been deleted: aws cloudformation list-stacks --query "StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus"

Created by:

Justin Callison

Justin Callison

Director and General Manager, Workflow at Amazon Web Services