Edit

Share via


GlobalConfiguration Class

Definition

Caution

This type is obsolete and may be removed in a future release. Use configuration methods on ISiloHostBuilder to configure specific types.

Data object holding Silo global configuration parameters.

[System.Serializable]
public class GlobalConfiguration : Orleans.Runtime.Configuration.MessagingConfiguration
[System.Serializable]
[System.Obsolete("This type is obsolete and may be removed in a future release. Use configuration methods on ISiloHostBuilder to configure specific types.")]
public class GlobalConfiguration : Orleans.Runtime.Configuration.MessagingConfiguration
[<System.Serializable>]
type GlobalConfiguration = class
    inherit MessagingConfiguration
[<System.Serializable>]
[<System.Obsolete("This type is obsolete and may be removed in a future release. Use configuration methods on ISiloHostBuilder to configure specific types.")>]
type GlobalConfiguration = class
    inherit MessagingConfiguration
Public Class GlobalConfiguration
Inherits MessagingConfiguration
Inheritance
GlobalConfiguration
Attributes

Constructors

GlobalConfiguration()

Fields

DEFAULT_MULTICLUSTER_REGISTRATION_STRATEGY
DEFAULT_PERFORM_DEADLOCK_DETECTION
DEFAULT_PLACEMENT_STRATEGY
ENFORCE_MINIMUM_REQUIREMENT_FOR_AGE_LIMIT

Properties

ActivationCountBasedPlacementChooseOutOf
AdoInvariant

When using ADO, identifies the underlying data provider for liveness and reminders. This three-part naming syntax is also used when creating a new factory and for identifying the provider in an application configuration file so that the provider name, along with its associated connection string, can be retrieved at run time. https://msdn.microsoft.com/en-us/library/dd0w4a2z%28v=vs.110%29.aspx In order to override this value for reminders set AdoInvariantForReminders

AdoInvariantForReminders

Set this property to override AdoInvariant for reminders.

AllowCallChainReentrancy
Application
AssumeHomogenousSilosForTesting
BackgroundGossipInterval

The time between background gossips.

BufferPoolBufferSize (Inherited from MessagingConfiguration)
BufferPoolMaxSize (Inherited from MessagingConfiguration)
BufferPoolPreallocationSize (Inherited from MessagingConfiguration)
CacheSize

The CacheSize attribute specifies the maximum number of grains to cache directory information for.

CacheTTLExtensionFactor

The TTLExtensionFactor attribute specifies the factor by which cache entry TTLs should be extended when they are found to be stable.

ClientDropTimeout (Inherited from MessagingConfiguration)
ClientRegistrationRefresh
ClientSenderBuckets (Inherited from MessagingConfiguration)
ClusterId

Cluster identity. Silos with the same cluster identity will join together. When deploying different versions of the application simultaneously, be sure to change the ID if they should not join the same logical cluster. In a multi-cluster network, the cluster ID must be unique for each cluster.

CollectionQuantum
DataConnectionString

Connection string for the underlying data provider for liveness and reminders. eg. Azure Storage, ZooKeeper, SQL Server, ect. In order to override this value for reminders set DataConnectionStringForReminders

DataConnectionStringForReminders

Set this property to override DataConnectionString for reminders.

DeathVoteExpirationTimeout

Expiration time in seconds for death vote in the membership table.

DefaultCompatibilityStrategy
DefaultMultiCluster

A list of cluster ids, to be used if no multicluster configuration is found in gossip channels.

DefaultPlacementStrategy
DefaultVersionSelectorStrategy
DeploymentId
Obsolete.

Deployment Id. This is the same as ClusterId and has been deprecated in favor of it.

DeploymentLoadPublisherRefreshTime
DirectoryCachingStrategy

The DirectoryCachingStrategy attribute specifies the caching strategy to use. The options are None, which means don't cache directory entries locally; LRU, which indicates that a standard fixed-size least recently used strategy should be used; and Adaptive, which indicates that an adaptive strategy with a fixed maximum size should be used. The Adaptive strategy is used by default.

DirectoryLazyDeregistrationDelay

The time span between when we have added an entry for an activation to the grain directory and when we are allowed to conditionally remove that entry. Conditional deregistration is used for lazy clean-up of activations whose prompt deregistration failed for some reason (e.g., message failure). This should always be at least one minute, since we compare the times on the directory partition, so message delays and clcks skues have to be allowed.

DropExpiredMessages (Inherited from MessagingConfiguration)
ExpectedClusterSize

The expected size of a cluster. Need not be very accurate, can be an overestimate.

FallbackSerializationProvider (Inherited from MessagingConfiguration)
FastKillOnCancelKeyPress
GatewaySenderQueues (Inherited from MessagingConfiguration)
GlobalSingleInstanceNumberRetries

The number of quick retries before going into DOUBTFUL state.

GlobalSingleInstanceRetryInterval

The time between the slow retries for DOUBTFUL activations.

GossipChannels

A list of connection strings for gossip channels.

GrainServiceConfigurations

Configuration for grain services.

HasMultiClusterNetwork

Whether this cluster is configured to be part of a multicluster network

IAmAliveTablePublishTimeout

The number of seconds to periodically write in the membership table that this silo is alive. Used only for diagnostics.

InitialCacheTTL

The InitialTTL attribute specifies the initial (minimum) time, in seconds, to keep a cache entry before revalidating.

LargeMessageWarningThreshold

The LargeMessageWarningThreshold attribute specifies when to generate a warning trace message for large messages.

(Inherited from MessagingConfiguration)
LivenessEnabled

Global switch to disable silo liveness protocol (should be used only for testing). The LivenessEnabled attribute, if provided and set to "false", suppresses liveness enforcement. If a silo is suspected to be dead, but this attribute is set to "false", the suspicions will not propagated to the system and enforced, This parameter is intended for use only for testing and troubleshooting. In production, liveness should always be enabled. Default is true (enabled)

LivenessType
MaxForwardCount

The MaxForwardCount attribute specifies the maximal number of times a message is being forwared from one silo to another. Forwarding is used internally by the tuntime as a recovery mechanism when silos fail and the membership is unstable. In such times the messages might not be routed correctly to destination, and runtime attempts to forward such messages a number of times before rejecting them.

(Inherited from MessagingConfiguration)
MaximumCacheTTL

The MaximumTTL attribute specifies the maximum time, in seconds, to keep a cache entry before revalidating.

MaxJoinAttemptTime

The number of seconds to attempt to join a cluster of silos before giving up.

MaxMultiClusterGateways

The maximum number of silos per cluster should be designated to serve as gateways.

MaxRequestProcessingTime

Specifies the maximum time that a request can take before the activation is reported as "blocked"

MaxResendCount (Inherited from MessagingConfiguration)
MaxSocketAge (Inherited from MessagingConfiguration)
MaxSockets (Inherited from MessagingConfiguration)
MaxStorageBusyRetries

Retry count for Azure Table operations.

MembershipTableAssembly

Assembly to use for custom MembershipTable implementation

MockReminderTableTimeout
NumMissedProbesLimit

The number of missed "I am alive" heartbeat messages from a silo or number of un-replied probes that lead to suspecting this silo as dead.

NumMissedTableIAmAliveLimit

The number of missed "I am alive" updates in the table from a silo that causes warning to be logged. Does not impact the liveness protocol.

NumProbedSilos

The number of silos each silo probes for liveness.

NumVirtualBucketsConsistentRing
NumVotesForDeathDeclaration

The number of non-expired votes that are needed to declare some silo as dead (should be at most NumMissedProbesLimit)

OpenConnectionTimeout (Inherited from MessagingConfiguration)
PerformDeadlockDetection
PrimaryNodeIsRequired

Determines if primary node is required to be configured as a seed node. True if LivenessType is set to MembershipTableGrain, false otherwise.

ProbeTimeout

The number of seconds to periodically probe other silos for their liveness or for the silo to send "I am alive" heartbeat messages about itself.

ProviderConfigurations

Configuration for various runtime providers.

ReminderServiceType
ReminderTableAssembly

Assembly to use for custom ReminderTable implementation

ResendOnTimeout (Inherited from MessagingConfiguration)
ResponseTimeout (Inherited from MessagingConfiguration)
SeedNodes

SeedNodes are only used in local development setting with LivenessProviderType.MembershipTableGrain SeedNodes are never used in production.

SerializationProviders (Inherited from MessagingConfiguration)
ServiceId

Service Id.

SiloSenderQueues (Inherited from MessagingConfiguration)
Subnet

The subnet on which the silos run. This option should only be used when running on multi-homed cluster. It should not be used when running in Azure.

TableRefreshTimeout

The number of seconds to periodically fetch updates from the membership table.

TypeMapRefreshInterval

The number of seconds to refresh the cluster grain interface map

UseAdoNetSystemStore

Determines if ADO should be used for storage of Membership and Reminders info. True if either or both of LivenessType and ReminderServiceType are set to SqlServer, false otherwise.

UseAzureSystemStore

Determines if Azure Storage should be used for storage of Membership and Reminders info. True if either or both of LivenessType and ReminderServiceType are set to AzureTable, false otherwise.

UseGlobalSingleInstanceByDefault

Whether to use the global single instance protocol as the default multicluster registration strategy.

UseLivenessGossip

Whether to use the gossip optimization to speed up spreading liveness information.

UseVirtualBucketsConsistentRing
ValidateInitialConnectivity

Whether new silo that joins the cluster has to validate the initial connectivity with all other Active silos.

Methods

GetAllProviderConfigurations()

Retrieves an enumeration of all currently configured provider configurations.

RegisterBootstrapProvider(String, String, IDictionary<String,String>)

Registers a given bootstrap provider.

RegisterBootstrapProvider<T>(String, IDictionary<String,String>)

Registers a given type of T where T is bootstrap provider

RegisterGrainService(String, String, IDictionary<String,String>)
RegisterLogConsistencyProvider(String, String, IDictionary<String,String>)

Registers a given log-consistency provider.

RegisterLogConsistencyProvider<T>(String, IDictionary<String,String>)

Registers a given type of T where T is a log-consistency provider

RegisterStatisticsProvider(String, String, IDictionary<String,String>)
RegisterStatisticsProvider<T>(String, IDictionary<String,String>)
RegisterStorageProvider(String, String, IDictionary<String,String>)

Registers a given storage provider.

RegisterStorageProvider<T>(String, IDictionary<String,String>)

Registers a given type of T where T is storage provider

RegisterStreamProvider(String, String, IDictionary<String,String>)

Registers a given stream provider.

RegisterStreamProvider<T>(String, IDictionary<String,String>)

Registers a given type of T where T is stream provider

Remap(GlobalConfiguration+GossipChannelType)
ToString()
TryGetProviderConfiguration(String, String, IProviderConfiguration)

Retrieves an existing provider configuration

Extension Methods

RegisterBootstrapProvider(GlobalConfiguration, String, String, IDictionary<String,String>)

Registers a given bootstrap provider.

RegisterBootstrapProvider<T>(GlobalConfiguration, String, IDictionary<String,String>)

Registers a given type of T where T is bootstrap provider

Applies to