Used when no custom provider is configured and 'auto-down-unreachable-after' is enabled.
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 MemberStatus Up
.
Base trait for all cluster messages.
Base trait for all cluster messages. All ClusterMessage's are serializable.
Interface for the cluster JMX MBean.
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.
INTERNAL API
INTERNAL API
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
and equals
are solely based on the underlying Address
, not its MemberStatus
and roles.
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.
Default downing provider used when no provider is configured and 'auto-down-unreachable-after' is not enabled.
Member identifier consisting of address and random uid
.
Member identifier consisting of address and random uid
.
The uid
is needed to be able to distinguish different
incarnations of a member with same hostname and port.
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.
Cluster Extension Id and factory for creating Cluster extension.
Domain events published to the event bus.
Domain events published to the event bus. Subscribe with:
Cluster(system).subscribe(actorRef, classOf[ClusterDomainEvent])
Cluster aware scope of a akka.actor.Deploy
Module with factory and ordering methods for Member instances.