final class ClusterShardingSettings extends NoSerializationVerificationNeeded
- Alphabetic
- By Inheritance
- ClusterShardingSettings
- NoSerializationVerificationNeeded
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ClusterShardingSettings(role: Option[String], rememberEntities: Boolean, journalPluginId: String, snapshotPluginId: String, stateStoreMode: String, rememberEntitiesStore: String, passivationStrategySettings: PassivationStrategySettings, shardRegionQueryTimeout: FiniteDuration, tuningParameters: TuningParameters, coordinatorSingletonOverrideRole: Boolean, coordinatorSingletonSettings: ClusterSingletonManagerSettings, leaseSettings: Option[LeaseUsageSettings])
- role
specifies that this entity type requires cluster nodes with a specific role. If the role is not specified all nodes in the cluster are used.
- rememberEntities
true if active entity actors shall be automatically restarted upon
Shard
restart. i.e. if theShard
is started on a differentShardRegion
due to rebalance or crash.- journalPluginId
Absolute path to the journal plugin configuration entity that is to be used for the internal persistence of ClusterSharding. If not defined the default journal plugin is used. Note that this is not related to persistence used by the entity actors.
- snapshotPluginId
Absolute path to the snapshot plugin configuration entity that is to be used for the internal persistence of ClusterSharding. If not defined the default snapshot plugin is used. Note that this is not related to persistence used by the entity actors.
- passivationStrategySettings
settings for automatic passivation strategy, see descriptions in reference.conf
- shardRegionQueryTimeout
the timeout for querying a shard region, see descriptions in reference.conf
- tuningParameters
additional tuning parameters, see descriptions in reference.conf
- leaseSettings
LeaseSettings for acquiring before creating the shard. Note that if you define a custom lease name and have several sharding entity types each one must have a unique lease name. If the lease name is undefined it will be derived from ActorSystem name and shard name, but that may result in too long lease names.
- new ClusterShardingSettings(role: Option[String], rememberEntities: Boolean, journalPluginId: String, snapshotPluginId: String, stateStoreMode: String, passivateIdleEntityAfter: FiniteDuration, tuningParameters: TuningParameters, coordinatorSingletonSettings: ClusterSingletonManagerSettings, leaseSettings: Option[LeaseUsageSettings])
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.0) Use the ClusterShardingSettings factory methods or the constructor including shardRegionQueryTimeout instead
- new ClusterShardingSettings(role: Option[String], rememberEntities: Boolean, journalPluginId: String, snapshotPluginId: String, stateStoreMode: String, passivateIdleEntityAfter: FiniteDuration, shardRegionQueryTimeout: FiniteDuration, tuningParameters: TuningParameters, coordinatorSingletonSettings: ClusterSingletonManagerSettings, leaseSettings: Option[LeaseUsageSettings])
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.7) Use the ClusterShardingSettings factory methods or the constructor including rememberedEntitiesStore instead
- new ClusterShardingSettings(role: Option[String], rememberEntities: Boolean, journalPluginId: String, snapshotPluginId: String, stateStoreMode: String, rememberEntitiesStore: String, passivateIdleEntityAfter: FiniteDuration, shardRegionQueryTimeout: FiniteDuration, tuningParameters: TuningParameters, coordinatorSingletonSettings: ClusterSingletonManagerSettings, leaseSettings: Option[LeaseUsageSettings])
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.18) Use the ClusterShardingSettings factory methods or the constructor including passivationStrategySettings instead
- new ClusterShardingSettings(role: Option[String], rememberEntities: Boolean, journalPluginId: String, snapshotPluginId: String, stateStoreMode: String, rememberEntitiesStore: String, passivationStrategySettings: PassivationStrategySettings, shardRegionQueryTimeout: FiniteDuration, tuningParameters: TuningParameters, coordinatorSingletonSettings: ClusterSingletonManagerSettings, leaseSettings: Option[LeaseUsageSettings])
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.20) Use the ClusterShardingSettings factory methods or the constructor including coordinatorSingletonOverrideRole instead
Value Members
- val coordinatorSingletonOverrideRole: Boolean
- val coordinatorSingletonSettings: ClusterSingletonManagerSettings
- val journalPluginId: String
- val leaseSettings: Option[LeaseUsageSettings]
- val passivationStrategySettings: PassivationStrategySettings
- val rememberEntities: Boolean
- val rememberEntitiesStore: String
- val role: Option[String]
- val shardRegionQueryTimeout: FiniteDuration
- val snapshotPluginId: String
- val stateStoreMode: String
- val tuningParameters: TuningParameters
- def withCoordinatorSingletonSettings(coordinatorSingletonSettings: ClusterSingletonManagerSettings): ClusterShardingSettings
The
role
of theClusterSingletonManagerSettings
is not used.The
role
of theClusterSingletonManagerSettings
is not used. Therole
of the coordinator singleton will be the same as therole
ofClusterShardingSettings
. - def withJournalPluginId(journalPluginId: String): ClusterShardingSettings
- def withLeaseSettings(leaseSettings: LeaseUsageSettings): ClusterShardingSettings
Note that if you define a custom lease name and have several sharding entity types each one must have a unique lease name.
Note that if you define a custom lease name and have several sharding entity types each one must have a unique lease name. If the lease name is undefined it will be derived from ActorSystem name and shard name, but that may result in too long lease names.
- def withNoPassivationStrategy(): ClusterShardingSettings
- def withPassivationStrategy(settings: PassivationStrategySettings): ClusterShardingSettings
API MAY CHANGE: Settings for passivation strategies may change after additional testing and feedback.
API MAY CHANGE: Settings for passivation strategies may change after additional testing and feedback.
- Annotations
- @ApiMayChange()
- def withRememberEntities(rememberEntities: Boolean): ClusterShardingSettings
- def withRole(role: Option[String]): ClusterShardingSettings
- def withRole(role: String): ClusterShardingSettings
- def withShardRegionQueryTimeout(duration: Duration): ClusterShardingSettings
- def withShardRegionQueryTimeout(duration: FiniteDuration): ClusterShardingSettings
- def withSnapshotPluginId(snapshotPluginId: String): ClusterShardingSettings
- def withStateStoreMode(stateStoreMode: String): ClusterShardingSettings
- def withTuningParameters(tuningParameters: TuningParameters): ClusterShardingSettings
Deprecated Value Members
- def passivateIdleEntityAfter: FiniteDuration
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.18) See passivationStrategySettings.idleEntitySettings instead
- def withPassivateIdleAfter(duration: Duration): ClusterShardingSettings
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.18) Use withPassivationStrategy instead
- def withPassivateIdleAfter(duration: FiniteDuration): ClusterShardingSettings
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.18) Use withPassivationStrategy instead