Class GlobalConfiguration
Data object holding Silo global configuration parameters.
Inheritance
System.Object
GlobalConfiguration
Assembly: Orleans.Core.Legacy.dll
Syntax
public class GlobalConfiguration : MessagingConfiguration
Constructors
|
Improve this Doc
View Source
GlobalConfiguration()
Declaration
public GlobalConfiguration()
Fields
|
Improve this Doc
View Source
DEFAULT_MULTICLUSTER_REGISTRATION_STRATEGY
Declaration
public static readonly string DEFAULT_MULTICLUSTER_REGISTRATION_STRATEGY
Field Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
ENFORCE_MINIMUM_REQUIREMENT_FOR_AGE_LIMIT
Declaration
public static bool ENFORCE_MINIMUM_REQUIREMENT_FOR_AGE_LIMIT
Field Value
| Type |
Description |
| System.Boolean |
|
Properties
|
Improve this Doc
View Source
ActivationCountBasedPlacementChooseOutOf
Declaration
public int ActivationCountBasedPlacementChooseOutOf { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
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
Declaration
public string AdoInvariant { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
AdoInvariantForReminders
Declaration
public string AdoInvariantForReminders { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
AllowCallChainReentrancy
Declaration
public bool AllowCallChainReentrancy { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
Application
Declaration
public ApplicationConfiguration Application { get; }
Property Value
|
Improve this Doc
View Source
AssumeHomogenousSilosForTesting
Declaration
public bool AssumeHomogenousSilosForTesting { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
BackgroundGossipInterval
The time between background gossips.
Declaration
public TimeSpan BackgroundGossipInterval { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
CacheSize
The CacheSize attribute specifies the maximum number of grains to cache directory information for.
Declaration
public int CacheSize { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
CacheTTLExtensionFactor
The TTLExtensionFactor attribute specifies the factor by which cache entry TTLs should be extended when they are found to be stable.
Declaration
public double CacheTTLExtensionFactor { get; set; }
Property Value
| Type |
Description |
| System.Double |
|
|
Improve this Doc
View Source
ClientRegistrationRefresh
Declaration
public TimeSpan ClientRegistrationRefresh { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
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.
Declaration
public string ClusterId { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
CollectionQuantum
Declaration
public TimeSpan CollectionQuantum { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
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
Declaration
public string DataConnectionString { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
DataConnectionStringForReminders
Declaration
public string DataConnectionStringForReminders { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
DeathVoteExpirationTimeout
Expiration time in seconds for death vote in the membership table.
Declaration
public TimeSpan DeathVoteExpirationTimeout { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
DefaultCompatibilityStrategy
Declaration
public CompatibilityStrategy DefaultCompatibilityStrategy { get; set; }
Property Value
|
Improve this Doc
View Source
DefaultMultiCluster
A list of cluster ids, to be used if no multicluster configuration is found in gossip channels.
Declaration
public IReadOnlyList<string> DefaultMultiCluster { get; set; }
Property Value
| Type |
Description |
| IReadOnlyList<System.String> |
|
|
Improve this Doc
View Source
DefaultPlacementStrategy
Declaration
public string DefaultPlacementStrategy { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
DefaultVersionSelectorStrategy
Declaration
public VersionSelectorStrategy DefaultVersionSelectorStrategy { get; set; }
Property Value
|
Improve this Doc
View Source
DeploymentId
Deployment Id. This is the same as ClusterId and has been deprecated in favor of it.
Declaration
public string DeploymentId { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
DeploymentLoadPublisherRefreshTime
Declaration
public TimeSpan DeploymentLoadPublisherRefreshTime { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
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.
Declaration
public GlobalConfiguration.DirectoryCachingStrategyType DirectoryCachingStrategy { get; set; }
Property Value
|
Improve this Doc
View Source
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.
Declaration
public TimeSpan DirectoryLazyDeregistrationDelay { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
ExpectedClusterSize
The expected size of a cluster. Need not be very accurate, can be an overestimate.
Declaration
public int ExpectedClusterSize { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
GlobalSingleInstanceNumberRetries
The number of quick retries before going into DOUBTFUL state.
Declaration
public int GlobalSingleInstanceNumberRetries { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
GlobalSingleInstanceRetryInterval
The time between the slow retries for DOUBTFUL activations.
Declaration
public TimeSpan GlobalSingleInstanceRetryInterval { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
GossipChannels
A list of connection strings for gossip channels.
Declaration
public IReadOnlyList<GlobalConfiguration.GossipChannelConfiguration> GossipChannels { get; set; }
Property Value
|
Improve this Doc
View Source
GrainServiceConfigurations
Configuration for grain services.
Declaration
public GrainServiceConfigurations GrainServiceConfigurations { get; set; }
Property Value
|
Improve this Doc
View Source
HasMultiClusterNetwork
Whether this cluster is configured to be part of a multicluster network
Declaration
public bool HasMultiClusterNetwork { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
IAmAliveTablePublishTimeout
The number of seconds to periodically write in the membership table that this silo is alive. Used ony for diagnostics.
Declaration
public TimeSpan IAmAliveTablePublishTimeout { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
InitialCacheTTL
The InitialTTL attribute specifies the initial (minimum) time, in seconds, to keep a cache entry before revalidating.
Declaration
public TimeSpan InitialCacheTTL { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
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 (eanabled)
Declaration
public bool LivenessEnabled { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
LivenessType
Declaration
public GlobalConfiguration.LivenessProviderType LivenessType { get; set; }
Property Value
|
Improve this Doc
View Source
MaximumCacheTTL
The MaximumTTL attribute specifies the maximum time, in seconds, to keep a cache entry before revalidating.
Declaration
public TimeSpan MaximumCacheTTL { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
MaxJoinAttemptTime
The number of seconds to attempt to join a cluster of silos before giving up.
Declaration
public TimeSpan MaxJoinAttemptTime { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
MaxMultiClusterGateways
The maximum number of silos per cluster should be designated to serve as gateways.
Declaration
public int MaxMultiClusterGateways { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
MaxRequestProcessingTime
Specifies the maximum time that a request can take before the activation is reported as "blocked"
Declaration
public TimeSpan MaxRequestProcessingTime { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
MaxStorageBusyRetries
Retry count for Azure Table operations.
Declaration
public int MaxStorageBusyRetries { get; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
MembershipTableAssembly
Assembly to use for custom MembershipTable implementation
Declaration
public string MembershipTableAssembly { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
MockReminderTableTimeout
Declaration
public TimeSpan MockReminderTableTimeout { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
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.
Declaration
public int NumMissedProbesLimit { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
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.
Declaration
public int NumMissedTableIAmAliveLimit { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
NumProbedSilos
The number of silos each silo probes for liveness.
Declaration
public int NumProbedSilos { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
NumVirtualBucketsConsistentRing
Declaration
public int NumVirtualBucketsConsistentRing { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
NumVotesForDeathDeclaration
The number of non-expired votes that are needed to declare some silo as dead (should be at most NumMissedProbesLimit)
Declaration
public int NumVotesForDeathDeclaration { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
|
Improve this Doc
View Source
Declaration
public bool PerformDeadlockDetection { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
PrimaryNodeIsRequired
Determines if primary node is required to be configured as a seed node.
True if LivenessType is set to MembershipTableGrain, false otherwise.
Declaration
public bool PrimaryNodeIsRequired { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
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.
Declaration
public TimeSpan ProbeTimeout { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
ProviderConfigurations
Configuration for various runtime providers.
Declaration
public IDictionary<string, ProviderCategoryConfiguration> ProviderConfigurations { get; set; }
Property Value
| Type |
Description |
| IDictionary<System.String, ProviderCategoryConfiguration> |
|
|
Improve this Doc
View Source
ReminderServiceType
Declaration
public GlobalConfiguration.ReminderServiceProviderType ReminderServiceType { get; set; }
Property Value
|
Improve this Doc
View Source
ReminderTableAssembly
Assembly to use for custom ReminderTable implementation
Declaration
public string ReminderTableAssembly { get; set; }
Property Value
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
SeedNodes
SeedNodes are only used in local development setting with LivenessProviderType.MembershipTableGrain
SeedNodes are never used in production.
Declaration
public IList<IPEndPoint> SeedNodes { get; }
Property Value
| Type |
Description |
| IList<IPEndPoint> |
|
|
Improve this Doc
View Source
ServiceId
Declaration
public Guid ServiceId { get; set; }
Property Value
|
Improve this Doc
View Source
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.
Declaration
public byte[] Subnet { get; set; }
Property Value
| Type |
Description |
| System.Byte[] |
|
|
Improve this Doc
View Source
TableRefreshTimeout
The number of seconds to periodically fetch updates from the membership table.
Declaration
public TimeSpan TableRefreshTimeout { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
TypeMapRefreshInterval
The number of seconds to refresh the cluster grain interface map
Declaration
public TimeSpan TypeMapRefreshInterval { get; set; }
Property Value
| Type |
Description |
| TimeSpan |
|
|
Improve this Doc
View Source
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.
Declaration
public bool UseAdoNetSystemStore { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
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.
Declaration
public bool UseAzureSystemStore { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
UseGlobalSingleInstanceByDefault
Whether to use the global single instance protocol as the default
multicluster registration strategy.
Declaration
public bool UseGlobalSingleInstanceByDefault { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
UseLivenessGossip
Whether to use the gossip optimization to speed up spreading liveness information.
Declaration
public bool UseLivenessGossip { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
UseVirtualBucketsConsistentRing
Declaration
public bool UseVirtualBucketsConsistentRing { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
|
Improve this Doc
View Source
ValidateInitialConnectivity
Whether new silo that joins the cluster has to validate the initial connectivity with all other Active silos.
Declaration
public bool ValidateInitialConnectivity { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Methods
|
Improve this Doc
View Source
GetAllProviderConfigurations()
Retrieves an enumeration of all currently configured provider configurations.
Declaration
public IEnumerable<IProviderConfiguration> GetAllProviderConfigurations()
Returns
| Type |
Description |
| IEnumerable<IProviderConfiguration> |
An enumeration of all currently configured provider configurations.
|
|
Improve this Doc
View Source
RegisterGrainService(String, String, IDictionary<String, String>)
Declaration
public void RegisterGrainService(string serviceName, string serviceType, IDictionary<string, string> properties = null)
Parameters
| Type |
Name |
Description |
| System.String |
serviceName |
|
| System.String |
serviceType |
|
| IDictionary<System.String, System.String> |
properties |
|
|
Improve this Doc
View Source
RegisterLogConsistencyProvider(String, String, IDictionary<String, String>)
Registers a given log-consistency provider.
Declaration
public void RegisterLogConsistencyProvider(string providerTypeFullName, string providerName, IDictionary<string, string> properties = null)
Parameters
| Type |
Name |
Description |
| System.String |
providerTypeFullName |
Full name of the log-consistency provider type
|
| System.String |
providerName |
Name of the log-consistency provider
|
| IDictionary<System.String, System.String> |
properties |
Properties that will be passed to the log-consistency provider upon initialization
|
|
Improve this Doc
View Source
RegisterLogConsistencyProvider<T>(String, IDictionary<String, String>)
Registers a given type of T where T is a log-consistency provider
Declaration
public void RegisterLogConsistencyProvider<T>(string providerName, IDictionary<string, string> properties = null)where T : ILogConsistencyProvider
Parameters
| Type |
Name |
Description |
| System.String |
providerName |
Name of the log-consistency provider
|
| IDictionary<System.String, System.String> |
properties |
Properties that will be passed to log-consistency provider upon initialization
|
Type Parameters
| Name |
Description |
| T |
Non-abstract type which implements a log-consistency storage interface
|
|
Improve this Doc
View Source
RegisterStorageProvider(String, String, IDictionary<String, String>)
Registers a given storage provider.
Declaration
public void RegisterStorageProvider(string providerTypeFullName, string providerName, IDictionary<string, string> properties = null)
Parameters
| Type |
Name |
Description |
| System.String |
providerTypeFullName |
Full name of the storage provider type
|
| System.String |
providerName |
Name of the storage provider
|
| IDictionary<System.String, System.String> |
properties |
Properties that will be passed to the storage provider upon initialization
|
|
Improve this Doc
View Source
RegisterStorageProvider<T>(String, IDictionary<String, String>)
Registers a given type of T where T is storage provider
Declaration
public void RegisterStorageProvider<T>(string providerName, IDictionary<string, string> properties = null)where T : IStorageProvider
Parameters
| Type |
Name |
Description |
| System.String |
providerName |
Name of the storage provider
|
| IDictionary<System.String, System.String> |
properties |
Properties that will be passed to storage provider upon initialization
|
Type Parameters
| Name |
Description |
| T |
Non-abstract type which implements storage
|
|
Improve this Doc
View Source
RegisterStreamProvider(String, String, IDictionary<String, String>)
Registers a given stream provider.
Declaration
public void RegisterStreamProvider(string providerTypeFullName, string providerName, IDictionary<string, string> properties = null)
Parameters
| Type |
Name |
Description |
| System.String |
providerTypeFullName |
Full name of the stream provider type
|
| System.String |
providerName |
Name of the stream provider
|
| IDictionary<System.String, System.String> |
properties |
Properties that will be passed to the stream provider upon initialization
|
|
Improve this Doc
View Source
RegisterStreamProvider<T>(String, IDictionary<String, String>)
Registers a given type of T where T is stream provider
Declaration
public void RegisterStreamProvider<T>(string providerName, IDictionary<string, string> properties = null)where T : IStreamProvider
Parameters
| Type |
Name |
Description |
| System.String |
providerName |
Name of the stream provider
|
| IDictionary<System.String, System.String> |
properties |
Properties that will be passed to stream provider upon initialization
|
Type Parameters
| Name |
Description |
| T |
Non-abstract type which implements IStreamProvider stream
|
|
Improve this Doc
View Source
Remap(GlobalConfiguration.GossipChannelType)
Declaration
public static string Remap(GlobalConfiguration.GossipChannelType type)
Parameters
Returns
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
ToString()
Declaration
public override string ToString()
Returns
| Type |
Description |
| System.String |
|
|
Improve this Doc
View Source
TryGetProviderConfiguration(String, String, out IProviderConfiguration)
Retrieves an existing provider configuration
Declaration
public bool TryGetProviderConfiguration(string providerTypeFullName, string providerName, out IProviderConfiguration config)
Parameters
| Type |
Name |
Description |
| System.String |
providerTypeFullName |
Full name of the stream provider type
|
| System.String |
providerName |
Name of the stream provider
|
| IProviderConfiguration |
config |
The provider configuration, if exists
|
Returns
| Type |
Description |
| System.Boolean |
True if a configuration for this provider already exists, false otherwise.
|
Extension Methods