Packages

package cluster

Content Hierarchy
Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package client
  2. package ddata
  3. package metrics
  4. package protobuf
  5. package pubsub
  6. package routing
  7. package sbr
  8. package sharding
  9. package singleton
  10. package typed

Type Members

  1. 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 pekko.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.

  2. trait ClusterMessage extends Serializable

    Base trait for all cluster messages.

    Base trait for all cluster messages. All ClusterMessage's are serializable.

  3. trait ClusterNodeMBean extends AnyRef

    Interface for the cluster JMX MBean.

  4. abstract class ClusterScope extends Scope
    Annotations
    @nowarn() @SerialVersionUID()
  5. final class ClusterSettings extends AnyRef
  6. sealed trait ConfigValidation extends AnyRef
    Annotations
    @DoNotInherit()
  7. 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 pekko.actor.ActorSystem.

    A custom DowningProvider can be configured with pekko.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://pekko.apache.org/docs/pekko/current/split-brain-resolver.html

  8. final case class Invalid(errorMessages: Seq[String]) extends ConfigValidation with Product with Serializable
  9. final class JoinConfigCompatCheckCluster extends JoinConfigCompatChecker

    INTERNAL API

    INTERNAL API

    Annotations
    @InternalApi()
  10. abstract class JoinConfigCompatChecker extends AnyRef
  11. 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 and equals are solely based on the underlying Address, not its MemberStatus and roles.

    Annotations
    @SerialVersionUID()
  12. 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.

  13. final class NoDowning extends DowningProvider

    Default downing provider used when no provider is configured.

  14. final class UniqueAddress extends Product with Serializable with Ordered[UniqueAddress]

    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.

    Annotations
    @SerialVersionUID()
  15. final case class VectorClock(versions: TreeMap[Node, Long] = TreeMap.empty[VectorClock.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

  1. object Cluster extends ExtensionId[Cluster] with ExtensionIdProvider

    Cluster Extension Id and factory for creating Cluster extension.

  2. object ClusterEvent

    Domain events published to the event bus.

    Domain events published to the event bus. Subscribe with:

    Cluster(system).subscribe(actorRef, classOf[ClusterDomainEvent])
  3. 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()
  4. case object ClusterScope extends ClusterScope with Product with Serializable

    Cluster aware scope of a pekko.actor.Deploy

  5. object ClusterSettings
  6. object GossipEnvelope extends Serializable
  7. object JoinConfigCompatChecker
  8. object Member extends Serializable

    Module with factory and ordering methods for Member instances.

  9. object MemberStatus
  10. object UniqueAddress extends AbstractFunction2[Address, Int, UniqueAddress] with Serializable
  11. case object Valid extends ConfigValidation with Product with Serializable

Ungrouped