Throughput Tuning
Practical examples for tuning Elsa Workflows throughput, including commit strategies, clustering optimizations, and resource management.
Commit Strategy Configuration
High-Throughput Configuration
using Elsa.Extensions;
using Elsa.Workflows.CommitStates;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddElsa(elsa =>
{
elsa.UseWorkflows(workflows =>
{
// Configure commit strategies for high throughput
workflows.UseCommitStrategies(strategies =>
{
// Only commit when workflow completes - minimal I/O
strategies.UseWorkflowExecutedStrategy();
});
});
// Additional performance settings
elsa.UseWorkflowRuntime(runtime =>
{
runtime.UseDistributedRuntime(); // Enable for clustering
});
});
var app = builder.Build();
app.Run();Long-Running Workflow Configuration
Per-Workflow Strategy Selection
Clustering and Scheduler Tuning
Quartz Scheduler Configuration for High Volume
Distributed Lock Optimization
Lock Contention Monitoring
Database Tuning
Connection Pool Configuration
Batch Operations
Observability Setup
Comprehensive Monitoring Configuration
Key Metrics to Monitor
Metric
Description
Alert Threshold
Performance Checklist
Related Documentation
Last updated