akka clusterclient

来源:互联网 发布:威海商友网络怎么样 编辑:程序博客网 时间:2024/05/16 08:11
/** * This actor is intended to be used on an external node that is not member * of the cluster. It acts like a gateway for sending messages to actors * somewhere in the cluster. From the initial contact points it will establish * a connection to a [[ClusterReceptionist]] somewhere in the cluster. It will * monitor the connection to the receptionist and establish a new connection if * the link goes down. When looking for a new receptionist it uses fresh contact * points retrieved from previous establishment, or periodically refreshed * contacts, i.e. not necessarily the initial contact points. * * You can send messages via the `ClusterClient` to any actor in the cluster * that is registered in the [[ClusterReceptionist]]. * Messages are wrapped in [[ClusterClient.Send]], [[ClusterClient.SendToAll]] * or [[ClusterClient.Publish]]. * * 1. [[ClusterClient.Send]] - * The message will be delivered to one recipient with a matching path, if any such * exists. If several entries match the path the message will be delivered * to one random destination. The sender of the message can specify that local * affinity is preferred, i.e. the message is sent to an actor in the same local actor * system as the used receptionist actor, if any such exists, otherwise random to any other * matching entry. * * 2. [[ClusterClient.SendToAll]] - * The message will be delivered to all recipients with a matching path. * * 3. [[ClusterClient.Publish]] - * The message will be delivered to all recipients Actors that have been registered as subscribers to * to the named topic. * *  Use the factory method [[ClusterClient#props]]) to create the * [[akka.actor.Props]] for the actor. * * If the receptionist is not currently available, the client will buffer the messages * and then deliver them when the connection to the receptionist has been established. * The size of the buffer is configurable and it can be disabled by using a buffer size * of 0. When the buffer is full old messages will be dropped when new messages are sent * via the client. * * Note that this is a best effort implementation: messages can always be lost due to the distributed * nature of the actors involved. */
0 0