package cluster
- Alphabetic
- Public
- All
Type Members
-
class
Cluster extends Extension
This module is responsible cluster membership information.
This module is responsible cluster membership information. Changes to the cluster information is retrieved through #subscribe. Commands to operate the cluster is available through methods in this class, such as #join, #down and #leave.
Each cluster Member is identified by its akka.actor.Address, and the cluster address of this actor system is #selfAddress. A member also has a status; initially MemberStatus
Joining
followed by MemberStatusUp
. -
trait
ClusterMessage extends Serializable
Base trait for all cluster messages.
Base trait for all cluster messages. All ClusterMessage's are serializable.
-
trait
ClusterNodeMBean extends AnyRef
Interface for the cluster JMX MBean.
-
abstract
class
ClusterScope extends Scope
- Annotations
- @silent( "@SerialVersionUID has no effect" ) @SerialVersionUID()
- final class ClusterSettings extends AnyRef
-
sealed
trait
ConfigValidation extends AnyRef
- Annotations
- @DoNotInherit()
-
abstract
class
DowningProvider extends AnyRef
API for plugins that will handle downing of cluster nodes.
API for plugins that will handle downing of cluster nodes. Concrete plugins must subclass and have a public one argument constructor accepting an akka.actor.ActorSystem.
A custom
DowningProvider
can be configured withakka.cluster.downing-provider-class
When implementing a downing provider you should make sure that it will not split the cluster into several separate clusters in case of network problems or system overload (long GC pauses). This is much more difficult than it might be perceived at first, so carefully read the concerns and scenarios described in https://doc.akka.io/docs/akka/current/typed/cluster.html#downing and https://doc.akka.io/docs/akka-enhancements/current/split-brain-resolver.html
- final case class Invalid(errorMessages: Seq[String]) extends ConfigValidation with Product with Serializable
-
final
class
JoinConfigCompatCheckCluster extends JoinConfigCompatChecker
INTERNAL API
INTERNAL API
- Annotations
- @InternalApi()
- abstract class JoinConfigCompatChecker extends AnyRef
-
class
Member extends Serializable
Represents the address, current status, and roles of a cluster member node.
Represents the address, current status, and roles of a cluster member node.
Note:
hashCode
andequals
are solely based on the underlyingAddress
, not itsMemberStatus
and roles.- Annotations
- @SerialVersionUID()
-
sealed abstract
class
MemberStatus extends AnyRef
Defines the current status of a cluster member node
Defines the current status of a cluster member node
Can be one of: Joining, WeaklyUp, Up, Leaving, Exiting and Down and Removed.
-
final
class
NoDowning extends DowningProvider
Default downing provider used when no provider is configured.
-
final
case class
UniqueAddress(address: Address, longUid: Long) extends Ordered[UniqueAddress] with Product with Serializable
Member identifier consisting of address and random
uid
.Member identifier consisting of address and random
uid
. Theuid
is needed to be able to distinguish different incarnations of a member with same hostname and port.- Annotations
- @SerialVersionUID()
-
final
case class
VectorClock(versions: TreeMap[Node, Long] = ...) extends Product with Serializable
Representation of a Vector-based clock (counting clock), inspired by Lamport logical clocks.
Representation of a Vector-based clock (counting clock), inspired by Lamport logical clocks.
Reference: 1) Leslie Lamport (1978). "Time, clocks, and the ordering of events in a distributed system". Communications of the ACM 21 (7): 558-565. 2) Friedemann Mattern (1988). "Virtual Time and Global States of Distributed Systems". Workshop on Parallel and Distributed Algorithms: pp. 215-226
Based on code from the 'vlock' VectorClock library by Coda Hale.
- Annotations
- @SerialVersionUID()
Value Members
-
object
Cluster extends ExtensionId[Cluster] with ExtensionIdProvider
Cluster Extension Id and factory for creating Cluster extension.
-
object
ClusterEvent
Domain events published to the event bus.
Domain events published to the event bus. Subscribe with:
Cluster(system).subscribe(actorRef, classOf[ClusterDomainEvent])
-
object
ClusterLogMarker
This is public with the purpose to document the used markers and properties of log events.
This is public with the purpose to document the used markers and properties of log events. No guarantee that it will remain binary compatible, but the marker names and properties are considered public API and will not be changed without notice.
- Annotations
- @ApiMayChange()
-
object
ClusterScope extends ClusterScope with Product with Serializable
Cluster aware scope of a akka.actor.Deploy
- object ClusterSettings
- object GossipEnvelope extends Serializable
- object JoinConfigCompatChecker
-
object
Member extends Serializable
Module with factory and ordering methods for Member instances.
- object MemberStatus
- object UniqueAddress extends AbstractFunction2[Address, Int, UniqueAddress] with Serializable
- object Valid extends ConfigValidation with Product with Serializable