Temporal

Batch RPS Throttling Limiting Operation Throughput

info
performanceUpdated Mar 3, 2026

Batch operations are rate-limited via the RPS parameter, with defaults and maximums defined by the worker.BatcherRPS dynamic configuration. When batch jobs process large numbers of workflows, RPS limits can cause significant delays or timeouts.

Technologies:
How to detect:

Batch operations are taking longer than expected to complete, potentially due to RPS throttling. The RPS field in BatchParams controls requests-per-second, with limits enforced by worker.BatcherRPS dynamic config.

Recommended action:

1. Review current batch job execution time and compare against expected completion based on workflow count and RPS setting. 2. Check the worker.BatcherRPS dynamic config value for current RPS limits. 3. Calculate required RPS: (number of target workflows) / (desired completion time in seconds). 4. If current RPS is limiting throughput, evaluate whether increasing it would impact cluster stability. 5. Consider increasing worker.BatcherRPS dynamic config if cluster resources allow. 6. Alternatively, split large batch jobs into smaller operations or schedule them during low-traffic periods. 7. Monitor temporal_server_batcher_processor_requested to track batch operation rate. 8. Verify Concurrency setting is appropriate for the current RPS limit.