final case class AdaptiveLoadBalancingRoutingLogic(system: ActorSystem, metricsSelector: MetricsSelector = MixMetricsSelector) extends RoutingLogic with NoSerializationVerificationNeeded with Product with Serializable
Load balancing of messages to cluster nodes based on cluster metric data.
It uses random selection of routees based on probabilities derived from the remaining capacity of corresponding node.
- system
the actor system hosting this router
- metricsSelector
decides what probability to use for selecting a routee, based on remaining capacity as indicated by the node metrics
- Alphabetic
- By Inheritance
- AdaptiveLoadBalancingRoutingLogic
- Serializable
- Serializable
- Product
- Equals
- RoutingLogic
- NoSerializationVerificationNeeded
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
AdaptiveLoadBalancingRoutingLogic(system: ActorSystem, metricsSelector: MetricsSelector = MixMetricsSelector)
- system
the actor system hosting this router
- metricsSelector
decides what probability to use for selecting a routee, based on remaining capacity as indicated by the node metrics
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 AdaptiveLoadBalancingRoutingLogic to any2stringadd[AdaptiveLoadBalancingRoutingLogic] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (AdaptiveLoadBalancingRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate() @throws( ... )
-
def
ensuring(cond: (AdaptiveLoadBalancingRoutingLogic) ⇒ Boolean, msg: ⇒ Any): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (AdaptiveLoadBalancingRoutingLogic) ⇒ Boolean): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to StringFormat[AdaptiveLoadBalancingRoutingLogic] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
metricsChanged(event: ClusterMetricsChanged): Unit
- Annotations
- @tailrec()
- val metricsSelector: MetricsSelector
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
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
- AdaptiveLoadBalancingRoutingLogic → RoutingLogic
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- val system: ActorSystem
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
→[B](y: B): (AdaptiveLoadBalancingRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
Inherited from AnyRef
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
- Deprecated
(Since version ) see corresponding Javadoc for more information.
Inherited from Any
Inherited by implicit conversion any2stringadd from AdaptiveLoadBalancingRoutingLogic to any2stringadd[AdaptiveLoadBalancingRoutingLogic]
Value Members
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to any2stringadd[AdaptiveLoadBalancingRoutingLogic] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
Inherited by implicit conversion StringFormat from AdaptiveLoadBalancingRoutingLogic to StringFormat[AdaptiveLoadBalancingRoutingLogic]
Value Members
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to StringFormat[AdaptiveLoadBalancingRoutingLogic] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
Inherited by implicit conversion Ensuring from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic]
Value Members
-
def
ensuring(cond: (AdaptiveLoadBalancingRoutingLogic) ⇒ Boolean, msg: ⇒ Any): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (AdaptiveLoadBalancingRoutingLogic) ⇒ Boolean): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
Inherited by implicit conversion ArrowAssoc from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic]
Value Members
-
def
->[B](y: B): (AdaptiveLoadBalancingRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
def
→[B](y: B): (AdaptiveLoadBalancingRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
Ungrouped
-
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 AdaptiveLoadBalancingRoutingLogic to any2stringadd[AdaptiveLoadBalancingRoutingLogic] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (AdaptiveLoadBalancingRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate() @throws( ... )
-
def
ensuring(cond: (AdaptiveLoadBalancingRoutingLogic) ⇒ Boolean, msg: ⇒ Any): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (AdaptiveLoadBalancingRoutingLogic) ⇒ Boolean): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): AdaptiveLoadBalancingRoutingLogic
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to Ensuring[AdaptiveLoadBalancingRoutingLogic] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to StringFormat[AdaptiveLoadBalancingRoutingLogic] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
metricsChanged(event: ClusterMetricsChanged): Unit
- Annotations
- @tailrec()
- val metricsSelector: MetricsSelector
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
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
- AdaptiveLoadBalancingRoutingLogic → RoutingLogic
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- val system: ActorSystem
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
→[B](y: B): (AdaptiveLoadBalancingRoutingLogic, B)
- Implicit
- This member is added by an implicit conversion from AdaptiveLoadBalancingRoutingLogic to ArrowAssoc[AdaptiveLoadBalancingRoutingLogic] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
- Deprecated
(Since version ) see corresponding Javadoc for more information.