This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Performance and scalability statistics of Dapr

Benchmarks and guidelines for Dapr building blocks

1 - Longhaul performance and stability

This article provides longhaul performance and stability benchmarks for Dapr on Kubernetes.

The longhaul tests are designed to run for a period of a week, validating the stability of Dapr and its components, while measuring resource utilization and performance over time.

Public Dashboard

You can access the live longhaul test results on the public Grafana dashboard. This dashboard is updated in near real-time, showing the latest results from the longhaul tests.

Dapr Longhaul Dashboard.

System overview

The longhaul environment is run on a 3 node managed Azure Kubernetes Service (AKS) cluster, using standard D2s_v5 nodes running 2 cores and 8GB of RAM, with network acceleration.

Test Applications

  • Feed generator
  • Hashtag Actor
  • Hashtag counter
  • Message Analyzer
  • Pubsub Workflow
  • Streaming Pubsub Publisher / Producer
  • Streaming Pubsub Subscriber / Consumer
  • Snapshot App
  • Validation Worker App
  • Scheduler Jobs App
  • Workflow Gen App
  • Scheduler Actor Reminders - Client
  • Scheduler Actor Reminders - Server
  • Scheduler Workflow App

Redeployments

The longhaul test environment is redeployed every 7 days (Fridays at 08:00 UTC).

Test Infrastructure

The test infrastructure is sourced from this GitHub repository.

It is a mixture of Bicep IaC templates and Helm charts to deploy the test applications and Dapr.

2 - Performance results

Performance benchmarks and charts for Dapr APIs

The charts below show the performance benchmarks for the Dapr APIs on this version of Dapr, per API. Each section leads with a throughput per resource table (iterations/sec against the CPU and memory consumed by the app and its Dapr sidecar combined) followed by the latency, throughput, resource and data-volume charts for every scenario.

To view the results for a different Dapr version, use the version selector at the top of the docs.

How this data is produced

Benchmarks run in the dapr-perf suite for each Dapr release. The raw report is the source of truth and is committed to the dapr/dapr repository; the rendered charts are published to the perf-charts branch and pulled into this page automatically. Nothing on this page is version-specific, the results shown always match the Dapr version you are viewing.