This repo is for load testing Dapr Workflows via Docker Compose.
In the past, this has flushed out many concurrency issues in the underlying durabletask-go library, which have been subsequently addressed in newer versions of the Dapr runtime. main
currently targets 1.14.0-rc6
of the runtime which is the first vresion to address the horizontal scaling constraints by inclusion of the new Actor Reminder sub-system.
docker compose -f compose-5-instances-3-schedulers.yml build
docker compose -f compose-5-instances-3-schedulers.yml up
This will create many workflow instances randomly distributed across the Workflow App instances.
Run the workflows by making a POST request to :
http://localhost:5112/start/monitor-workflow?runId={runId}&count=1000&async=true
- Where
{runId}
is a unique value i.e. UUID/GUID. - Increase/decrease the amount of workflows created by changing the
count
property
This will create many workflow instances randomly distributed across the Workflow App instances.
Run the workflows by making a POST request to :
http://localhost:5112/start/fanout-workflow?runId={runId}&count=1000&async=true
- Where
{runId}
is a unique value i.e. UUID/GUID. - Increase/decrease the amount of workflows created by changing the
count
property