o

org.apache.pekko.routing

ConsistentHashingRouter

object ConsistentHashingRouter

Source
ConsistentHashing.scala
Linear Supertypes
Content Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ConsistentHashingRouter
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait ConsistentHashMapper extends AnyRef

    JAVA API Mapping from message to the data to use for the consistent hash key.

    JAVA API Mapping from message to the data to use for the consistent hash key. Note that it's not the hash that is to be returned, but the data to be hashed.

    May return null to indicate that the message is not handled by this mapping.

    If returning an Array[Byte] or String it will be used as is, otherwise the configured pekko.serialization.Serializer will be applied to the returned data.

  2. type ConsistentHashMapping = PartialFunction[Any, Any]

    Partial function from message to the data to use for the consistent hash key.

    Partial function from message to the data to use for the consistent hash key. Note that it's not the hash that is to be returned, but the data to be hashed.

    If returning an Array[Byte] or String it will be used as is, otherwise the configured pekko.serialization.Serializer will be applied to the returned data.

  3. trait ConsistentHashable extends AnyRef

    If you don't define the hashMapping when constructing the pekko.routing.ConsistentHashingRouter the messages need to implement this interface to define what data to use for the consistent hash key.

    If you don't define the hashMapping when constructing the pekko.routing.ConsistentHashingRouter the messages need to implement this interface to define what data to use for the consistent hash key. Note that it's not the hash, but the data to be hashed.

    If returning an Array[Byte] or String it will be used as is, otherwise the configured pekko.serialization.Serializer will be applied to the returned data.

    If messages can't implement this interface themselves, it's possible to wrap the messages in pekko.routing.ConsistentHashingRouter.ConsistentHashableEnvelope, or use pekko.routing.ConsistentHashingRouter.ConsistentHashableEnvelope

  4. final case class ConsistentHashableEnvelope(message: Any, hashKey: Any) extends ConsistentHashable with RouterEnvelope with WrappedMessage with Product with Serializable

    If you don't define the hashMapping when constructing the pekko.routing.ConsistentHashingRouter and messages can't implement pekko.routing.ConsistentHashingRouter.ConsistentHashable themselves they can we wrapped by this envelope instead.

    If you don't define the hashMapping when constructing the pekko.routing.ConsistentHashingRouter and messages can't implement pekko.routing.ConsistentHashingRouter.ConsistentHashable themselves they can we wrapped by this envelope instead. The router will only send the wrapped message to the destination, i.e. the envelope will be stripped off.

    Annotations
    @SerialVersionUID()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  9. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  13. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @native()
  14. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  15. def toString(): String
    Definition Classes
    AnyRef → Any
  16. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  17. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  18. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  19. object emptyConsistentHashMapping extends ConsistentHashMapping
    Annotations
    @SerialVersionUID()

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from AnyRef

Inherited from Any

Ungrouped