If you don't define the hashMapping when
constructing the akka.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 akka.akka.serialization.Serializer
will be applied to the returned data.
If you don't define the
hashMapping
when constructing the akka.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 akka.akka.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 akka.routing.ConsistentHashingRouter.ConsistentHashableEnvelope, or use akka.routing.ConsistentHashingRouter.ConsistentHashableEnvelope