final class ClusterReceptionist extends Actor with ActorLogging
ClusterClient connects to this actor to retrieve. The ClusterReceptionist
is
supposed to be started on all nodes, or all nodes with specified role, in the cluster.
The receptionist can be started with the ClusterClientReceptionist or as an
ordinary actor (use the factory method ClusterReceptionist#props).
The receptionist forwards messages from the client to the associated akka.cluster.pubsub.DistributedPubSubMediator,
i.e. the client can send messages to any actor in the cluster that is registered in the
DistributedPubSubMediator
. Messages from the client are wrapped in
akka.cluster.pubsub.DistributedPubSubMediator.Send, akka.cluster.pubsub.DistributedPubSubMediator.SendToAll
or akka.cluster.pubsub.DistributedPubSubMediator.Publish with the semantics described in
akka.cluster.pubsub.DistributedPubSubMediator.
Response messages from the destination actor are tunneled via the receptionist
to avoid inbound connections from other cluster nodes to the client, i.e.
the sender()
, as seen by the destination actor, is not the client itself.
The sender()
of the response messages, as seen by the client, is deadLetters
since the client should normally send subsequent messages via the ClusterClient
.
It is possible to pass the original sender inside the reply messages if
the client is supposed to communicate directly to the actor in the cluster.
- Annotations
- @deprecated
- Deprecated
(Since version 2.6.0) Use Akka gRPC instead, see https://doc.akka.io/docs/akka/2.6/cluster-client.html#migration-to-akka-grpc
- Source
- ClusterClient.scala
- Alphabetic
- By Inheritance
- ClusterReceptionist
- ActorLogging
- Actor
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ClusterReceptionist(pubSubMediator: ActorRef, settings: ClusterReceptionistSettings)
Type Members
- type Receive = PartialFunction[Any, Unit]
- Definition Classes
- Actor
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toany2stringadd[ClusterReceptionist] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (ClusterReceptionist, B)
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toArrowAssoc[ClusterReceptionist] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def aroundPostRestart(reason: Throwable): Unit
- Attributes
- protected[akka]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- def aroundPostStop(): Unit
- Attributes
- protected[akka]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit
- Attributes
- protected[akka]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- def aroundPreStart(): Unit
- Attributes
- protected[akka]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- def aroundReceive(receive: actor.Actor.Receive, msg: Any): Unit
- Attributes
- protected[akka]
- Definition Classes
- Actor
- Annotations
- @InternalApi()
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val checkDeadlinesTask: Cancellable
- var clientInteractions: HashMap[ActorRef, DeadlineFailureDetector]
- var clientsPublished: HashSet[ActorRef]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- val cluster: Cluster
- var consistentHash: ConsistentHash[Address]
- implicit val context: ActorContext
- Definition Classes
- Actor
- def ensuring(cond: (ClusterReceptionist) => Boolean, msg: => Any): ClusterReceptionist
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toEnsuring[ClusterReceptionist] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (ClusterReceptionist) => Boolean): ClusterReceptionist
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toEnsuring[ClusterReceptionist] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): ClusterReceptionist
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toEnsuring[ClusterReceptionist] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): ClusterReceptionist
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toEnsuring[ClusterReceptionist] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toStringFormat[ClusterReceptionist] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def log: LoggingAdapter
- Definition Classes
- ActorLogging
- def matchingRole(m: Member): Boolean
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- var nodes: SortedSet[Address]
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def postRestart(reason: Throwable): Unit
- Definition Classes
- Actor
- Annotations
- @throws(classOf[java.lang.Exception])
- def postStop(): Unit
- Definition Classes
- ClusterReceptionist → Actor
- def preRestart(reason: Throwable, message: Option[Any]): Unit
- Definition Classes
- Actor
- Annotations
- @throws(classOf[java.lang.Exception])
- def preStart(): Unit
- Definition Classes
- ClusterReceptionist → Actor
- def publishClientsUnreachable(): Unit
- def receive: PartialFunction[Any, Unit]
- Definition Classes
- ClusterReceptionist → Actor
- def responseTunnel(client: ActorRef): ActorRef
- implicit final val self: ActorRef
- Definition Classes
- Actor
- final def sender(): ActorRef
- Definition Classes
- Actor
- var subscribers: Vector[ActorRef]
- def supervisorStrategy: SupervisorStrategy
- Definition Classes
- Actor
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def unhandled(message: Any): Unit
- Definition Classes
- Actor
- def updateClientInteractions(client: ActorRef): Unit
- val verboseHeartbeat: Boolean
- val virtualNodesFactor: Int
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
- def →[B](y: B): (ClusterReceptionist, B)
- Implicit
- This member is added by an implicit conversion from ClusterReceptionist toArrowAssoc[ClusterReceptionist] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.