Core Orleans configuration options
Orleans options use the .NET options pattern. Configure them with Configure or Configure. Orleans also automatically binds the specific sections listed in Declarative configuration; other option types require explicit binding.
This page is a curated starting point, not an exhaustive property catalog. Configuration and provider package APIs are the source of truth for the installed Orleans version.
Common core options for client and silo builders
Section titled “Common core options for client and silo builders”| Option type | Use it for |
|---|---|
| ClusterOptions | ServiceId and ClusterId shared by silos and clients |
IClientBuilder-specific options
Section titled “IClientBuilder-specific options”| Option type | Use it for |
|---|---|
| ClientMessagingOptions | External client messaging and connections |
| GatewayOptions | Client gateway refresh and preferred gateway behavior |
ISiloBuilder-specific options
Section titled “ISiloBuilder-specific options”| Option type | Use it for |
|---|---|
| SiloMessagingOptions | Silo messaging, response timeouts, and connection behavior |
| EndpointOptions | Advertised silo/gateway ports and listening endpoints |
| SiloOptions | Silo name |
| ClusterMembershipOptions | Membership probing, failure detection, and initial connectivity validation |
| GrainCollectionOptions | Idle activation collection and memory-pressure shedding |
| GrainDirectoryOptions | Built-in grain directory cache and partition behavior |
| LoadSheddingOptions | Request rejection under host load |
| SchedulingOptions | Grain scheduling limits and diagnostics |
| GrainTypeOptions | Grain classes and interfaces supported by the process |
Feature-specific options
Section titled “Feature-specific options”Storage, clustering, reminders, streaming, serialization, dashboards, and third-party integrations define options in their own packages. Start with the provider’s builder method, such as UseRedisClustering, AddAzureBlobGrainStorage, or UseAdoNetReminderService, then follow the linked options type in IntelliSense or API reference.
Named providers are normally configured using their builder methods:
public static void ConfigureNamedProviders(ISiloBuilder siloBuilder){ siloBuilder .AddRedisGrainStorage( "hot-state", options => options.ConfigurationOptions = ConfigurationOptions.Parse("localhost:6379")) .AddAdoNetGrainStorage("archive", options => { options.Invariant = "Microsoft.Data.SqlClient"; options.ConnectionString = "Server=localhost;Database=Orleans;Integrated Security=true"; }) .UseRedisReminderService( options => options.ConfigurationOptions = ConfigurationOptions.Parse("localhost:6379"));}Declarative named providers use Orleans:{capability}:{name} and a ProviderType; see Declarative configuration.
Find an option
Section titled “Find an option”- Start from the hosting extension method for the feature.
- Follow its options delegate type in IntelliSense.
- Check the installed package’s API reference for defaults and validation.
- Inspect startup validation errors; Orleans validates required provider settings before the silo or client becomes ready.
Avoid copying all available properties into configuration. Leave defaults in place unless a deployment requirement or measurement justifies an override. This reduces version drift and makes intentional tuning visible.
