public class ZoneAvoidanceRule extends PredicateBasedRule
CompositePredicate to filter servers based on zone and availability. The primary predicate is composed of
a ZoneAvoidancePredicate and AvailabilityPredicate, with the fallbacks to AvailabilityPredicate
and an "always true" predicate returned from AbstractServerPredicate.alwaysTrue()| Constructor and Description |
|---|
ZoneAvoidanceRule() |
| Modifier and Type | Method and Description |
|---|---|
static java.util.Set<java.lang.String> |
getAvailableZones(LoadBalancerStats lbStats,
double triggeringLoad,
double triggeringBlackoutPercentage) |
static java.util.Set<java.lang.String> |
getAvailableZones(java.util.Map<java.lang.String,ZoneSnapshot> snapshot,
double triggeringLoad,
double triggeringBlackoutPercentage) |
AbstractServerPredicate |
getPredicate()
Method that provides an instance of
AbstractServerPredicate to be used by this class. |
void |
initWithNiwsConfig(com.netflix.client.config.IClientConfig clientConfig) |
choosesetLoadBalancergetLoadBalancerpublic void initWithNiwsConfig(com.netflix.client.config.IClientConfig clientConfig)
initWithNiwsConfig in interface com.netflix.client.IClientConfigAwareinitWithNiwsConfig in class ClientConfigEnabledRoundRobinRulepublic static java.util.Set<java.lang.String> getAvailableZones(java.util.Map<java.lang.String,ZoneSnapshot> snapshot, double triggeringLoad, double triggeringBlackoutPercentage)
public static java.util.Set<java.lang.String> getAvailableZones(LoadBalancerStats lbStats, double triggeringLoad, double triggeringBlackoutPercentage)
public AbstractServerPredicate getPredicate()
PredicateBasedRuleAbstractServerPredicate to be used by this class.getPredicate in class PredicateBasedRule