class SmallestMailboxRoutingLogic extends RoutingLogic
Tries to send to the non-suspended routee with fewest messages in mailbox. The selection is done in this order:
- pick any idle routee (not processing message) with empty mailbox
- pick any routee with empty mailbox
- pick routee with fewest pending messages in mailbox
- pick any remote routee, remote actors are consider lowest priority, since their mailbox size is unknown
- Annotations
- @SerialVersionUID()
- Source
- SmallestMailbox.scala
Linear Supertypes
Type Hierarchy
Ordering
- Alphabetic
- By Inheritance
Inherited
- SmallestMailboxRoutingLogic
- RoutingLogic
- NoSerializationVerificationNeeded
- AnyRef
- Any
Implicitly
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new SmallestMailboxRoutingLogic()
Value Members
-
def
select(message: Any, routees: IndexedSeq[Routee]): Routee
Pick the destination for a given message.
Pick the destination for a given message. Normally it picks one of the passed
routees
, but in the end it is up to the implementation to return whatever Routee to use for sending a specific message.When implemented from Java it can be good to know that
routees.apply(index)
can be used to get an element from theIndexedSeq
.- Definition Classes
- SmallestMailboxRoutingLogic → RoutingLogic