Package akka.cluster.metrics
Class AdaptiveLoadBalancingRoutingLogic
- java.lang.Object
-
- akka.cluster.metrics.AdaptiveLoadBalancingRoutingLogic
-
- All Implemented Interfaces:
NoSerializationVerificationNeeded
,RoutingLogic
,java.io.Serializable
,scala.Equals
,scala.Product
,scala.Serializable
public final class AdaptiveLoadBalancingRoutingLogic extends java.lang.Object implements RoutingLogic, NoSerializationVerificationNeeded, scala.Product, scala.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.
param: system the actor system hosting this router
param: metricsSelector decides what probability to use for selecting a routee, based on remaining capacity as indicated by the node metrics
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description AdaptiveLoadBalancingRoutingLogic(ActorSystem system, MetricsSelector metricsSelector)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MetricsSelector
$lessinit$greater$default$2()
static AdaptiveLoadBalancingRoutingLogic
apply(ActorSystem system, MetricsSelector metricsSelector)
static MetricsSelector
apply$default$2()
static double
apply$mcDDD$sp(double v1, double v2)
static double
apply$mcDDI$sp(double v1, int v2)
static double
apply$mcDDJ$sp(double v1, long v2)
static double
apply$mcDID$sp(int v1, double v2)
static double
apply$mcDII$sp(int v1, int v2)
static double
apply$mcDIJ$sp(int v1, long v2)
static double
apply$mcDJD$sp(long v1, double v2)
static double
apply$mcDJI$sp(long v1, int v2)
static double
apply$mcDJJ$sp(long v1, long v2)
static float
apply$mcFDD$sp(double v1, double v2)
static float
apply$mcFDI$sp(double v1, int v2)
static float
apply$mcFDJ$sp(double v1, long v2)
static float
apply$mcFID$sp(int v1, double v2)
static float
apply$mcFII$sp(int v1, int v2)
static float
apply$mcFIJ$sp(int v1, long v2)
static float
apply$mcFJD$sp(long v1, double v2)
static float
apply$mcFJI$sp(long v1, int v2)
static float
apply$mcFJJ$sp(long v1, long v2)
static int
apply$mcIDD$sp(double v1, double v2)
static int
apply$mcIDI$sp(double v1, int v2)
static int
apply$mcIDJ$sp(double v1, long v2)
static int
apply$mcIID$sp(int v1, double v2)
static int
apply$mcIII$sp(int v1, int v2)
static int
apply$mcIIJ$sp(int v1, long v2)
static int
apply$mcIJD$sp(long v1, double v2)
static int
apply$mcIJI$sp(long v1, int v2)
static int
apply$mcIJJ$sp(long v1, long v2)
static long
apply$mcJDD$sp(double v1, double v2)
static long
apply$mcJDI$sp(double v1, int v2)
static long
apply$mcJDJ$sp(double v1, long v2)
static long
apply$mcJID$sp(int v1, double v2)
static long
apply$mcJII$sp(int v1, int v2)
static long
apply$mcJIJ$sp(int v1, long v2)
static long
apply$mcJJD$sp(long v1, double v2)
static long
apply$mcJJI$sp(long v1, int v2)
static long
apply$mcJJJ$sp(long v1, long v2)
static void
apply$mcVDD$sp(double v1, double v2)
static void
apply$mcVDI$sp(double v1, int v2)
static void
apply$mcVDJ$sp(double v1, long v2)
static void
apply$mcVID$sp(int v1, double v2)
static void
apply$mcVII$sp(int v1, int v2)
static void
apply$mcVIJ$sp(int v1, long v2)
static void
apply$mcVJD$sp(long v1, double v2)
static void
apply$mcVJI$sp(long v1, int v2)
static void
apply$mcVJJ$sp(long v1, long v2)
static boolean
apply$mcZDD$sp(double v1, double v2)
static boolean
apply$mcZDI$sp(double v1, int v2)
static boolean
apply$mcZDJ$sp(double v1, long v2)
static boolean
apply$mcZID$sp(int v1, double v2)
static boolean
apply$mcZII$sp(int v1, int v2)
static boolean
apply$mcZIJ$sp(int v1, long v2)
static boolean
apply$mcZJD$sp(long v1, double v2)
static boolean
apply$mcZJI$sp(long v1, int v2)
static boolean
apply$mcZJJ$sp(long v1, long v2)
boolean
canEqual(java.lang.Object x$1)
AdaptiveLoadBalancingRoutingLogic
copy(ActorSystem system, MetricsSelector metricsSelector)
ActorSystem
copy$default$1()
MetricsSelector
copy$default$2()
boolean
equals(java.lang.Object x$1)
int
hashCode()
void
metricsChanged(ClusterMetricsChanged event)
MetricsSelector
metricsSelector()
int
productArity()
java.lang.Object
productElement(int x$1)
scala.collection.Iterator<java.lang.Object>
productIterator()
java.lang.String
productPrefix()
Routee
select(java.lang.Object message, scala.collection.immutable.IndexedSeq<Routee> routees)
ActorSystem
system()
java.lang.String
toString()
static scala.Option<scala.Tuple2<ActorSystem,MetricsSelector>>
unapply(AdaptiveLoadBalancingRoutingLogic x$0)
-
-
-
Constructor Detail
-
AdaptiveLoadBalancingRoutingLogic
public AdaptiveLoadBalancingRoutingLogic(ActorSystem system, MetricsSelector metricsSelector)
-
-
Method Detail
-
$lessinit$greater$default$2
public static MetricsSelector $lessinit$greater$default$2()
-
apply
public static AdaptiveLoadBalancingRoutingLogic apply(ActorSystem system, MetricsSelector metricsSelector)
-
apply$default$2
public static MetricsSelector apply$default$2()
-
unapply
public static scala.Option<scala.Tuple2<ActorSystem,MetricsSelector>> unapply(AdaptiveLoadBalancingRoutingLogic x$0)
-
apply$mcZDD$sp
public static boolean apply$mcZDD$sp(double v1, double v2)
-
apply$mcDDD$sp
public static double apply$mcDDD$sp(double v1, double v2)
-
apply$mcFDD$sp
public static float apply$mcFDD$sp(double v1, double v2)
-
apply$mcIDD$sp
public static int apply$mcIDD$sp(double v1, double v2)
-
apply$mcJDD$sp
public static long apply$mcJDD$sp(double v1, double v2)
-
apply$mcVDD$sp
public static void apply$mcVDD$sp(double v1, double v2)
-
apply$mcZDI$sp
public static boolean apply$mcZDI$sp(double v1, int v2)
-
apply$mcDDI$sp
public static double apply$mcDDI$sp(double v1, int v2)
-
apply$mcFDI$sp
public static float apply$mcFDI$sp(double v1, int v2)
-
apply$mcIDI$sp
public static int apply$mcIDI$sp(double v1, int v2)
-
apply$mcJDI$sp
public static long apply$mcJDI$sp(double v1, int v2)
-
apply$mcVDI$sp
public static void apply$mcVDI$sp(double v1, int v2)
-
apply$mcZDJ$sp
public static boolean apply$mcZDJ$sp(double v1, long v2)
-
apply$mcDDJ$sp
public static double apply$mcDDJ$sp(double v1, long v2)
-
apply$mcFDJ$sp
public static float apply$mcFDJ$sp(double v1, long v2)
-
apply$mcIDJ$sp
public static int apply$mcIDJ$sp(double v1, long v2)
-
apply$mcJDJ$sp
public static long apply$mcJDJ$sp(double v1, long v2)
-
apply$mcVDJ$sp
public static void apply$mcVDJ$sp(double v1, long v2)
-
apply$mcZID$sp
public static boolean apply$mcZID$sp(int v1, double v2)
-
apply$mcDID$sp
public static double apply$mcDID$sp(int v1, double v2)
-
apply$mcFID$sp
public static float apply$mcFID$sp(int v1, double v2)
-
apply$mcIID$sp
public static int apply$mcIID$sp(int v1, double v2)
-
apply$mcJID$sp
public static long apply$mcJID$sp(int v1, double v2)
-
apply$mcVID$sp
public static void apply$mcVID$sp(int v1, double v2)
-
apply$mcZII$sp
public static boolean apply$mcZII$sp(int v1, int v2)
-
apply$mcDII$sp
public static double apply$mcDII$sp(int v1, int v2)
-
apply$mcFII$sp
public static float apply$mcFII$sp(int v1, int v2)
-
apply$mcIII$sp
public static int apply$mcIII$sp(int v1, int v2)
-
apply$mcJII$sp
public static long apply$mcJII$sp(int v1, int v2)
-
apply$mcVII$sp
public static void apply$mcVII$sp(int v1, int v2)
-
apply$mcZIJ$sp
public static boolean apply$mcZIJ$sp(int v1, long v2)
-
apply$mcDIJ$sp
public static double apply$mcDIJ$sp(int v1, long v2)
-
apply$mcFIJ$sp
public static float apply$mcFIJ$sp(int v1, long v2)
-
apply$mcIIJ$sp
public static int apply$mcIIJ$sp(int v1, long v2)
-
apply$mcJIJ$sp
public static long apply$mcJIJ$sp(int v1, long v2)
-
apply$mcVIJ$sp
public static void apply$mcVIJ$sp(int v1, long v2)
-
apply$mcZJD$sp
public static boolean apply$mcZJD$sp(long v1, double v2)
-
apply$mcDJD$sp
public static double apply$mcDJD$sp(long v1, double v2)
-
apply$mcFJD$sp
public static float apply$mcFJD$sp(long v1, double v2)
-
apply$mcIJD$sp
public static int apply$mcIJD$sp(long v1, double v2)
-
apply$mcJJD$sp
public static long apply$mcJJD$sp(long v1, double v2)
-
apply$mcVJD$sp
public static void apply$mcVJD$sp(long v1, double v2)
-
apply$mcZJI$sp
public static boolean apply$mcZJI$sp(long v1, int v2)
-
apply$mcDJI$sp
public static double apply$mcDJI$sp(long v1, int v2)
-
apply$mcFJI$sp
public static float apply$mcFJI$sp(long v1, int v2)
-
apply$mcIJI$sp
public static int apply$mcIJI$sp(long v1, int v2)
-
apply$mcJJI$sp
public static long apply$mcJJI$sp(long v1, int v2)
-
apply$mcVJI$sp
public static void apply$mcVJI$sp(long v1, int v2)
-
apply$mcZJJ$sp
public static boolean apply$mcZJJ$sp(long v1, long v2)
-
apply$mcDJJ$sp
public static double apply$mcDJJ$sp(long v1, long v2)
-
apply$mcFJJ$sp
public static float apply$mcFJJ$sp(long v1, long v2)
-
apply$mcIJJ$sp
public static int apply$mcIJJ$sp(long v1, long v2)
-
apply$mcJJJ$sp
public static long apply$mcJJJ$sp(long v1, long v2)
-
apply$mcVJJ$sp
public static void apply$mcVJJ$sp(long v1, long v2)
-
system
public ActorSystem system()
-
metricsSelector
public MetricsSelector metricsSelector()
-
metricsChanged
public final void metricsChanged(ClusterMetricsChanged event)
-
select
public Routee select(java.lang.Object message, scala.collection.immutable.IndexedSeq<Routee> routees)
- Specified by:
select
in interfaceRoutingLogic
-
copy
public AdaptiveLoadBalancingRoutingLogic copy(ActorSystem system, MetricsSelector metricsSelector)
-
copy$default$1
public ActorSystem copy$default$1()
-
copy$default$2
public MetricsSelector copy$default$2()
-
productPrefix
public java.lang.String productPrefix()
- Specified by:
productPrefix
in interfacescala.Product
-
productArity
public int productArity()
- Specified by:
productArity
in interfacescala.Product
-
productElement
public java.lang.Object productElement(int x$1)
- Specified by:
productElement
in interfacescala.Product
-
productIterator
public scala.collection.Iterator<java.lang.Object> productIterator()
- Specified by:
productIterator
in interfacescala.Product
-
canEqual
public boolean canEqual(java.lang.Object x$1)
- Specified by:
canEqual
in interfacescala.Equals
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object x$1)
- Specified by:
equals
in interfacescala.Equals
- Overrides:
equals
in classjava.lang.Object
-
-