T
- public class ServerListSubsetFilter<T extends Server> extends ZoneAffinityServerListFilter<T> implements com.netflix.client.IClientConfigAware, java.util.Comparator<T>
Constructor and Description |
---|
ServerListSubsetFilter() |
Modifier and Type | Method and Description |
---|---|
int |
compare(T server1,
T server2)
Function to sort the list by server health condition, with
unhealthy servers before healthy servers.
|
java.util.List<T> |
getFilteredListOfServers(java.util.List<T> servers)
Given all the servers, keep only a stable subset of servers to use.
|
void |
initWithNiwsConfig(com.netflix.client.config.IClientConfig clientConfig) |
toString
getLoadBalancerStats, setLoadBalancerStats
public void initWithNiwsConfig(com.netflix.client.config.IClientConfig clientConfig)
initWithNiwsConfig
in interface com.netflix.client.IClientConfigAware
initWithNiwsConfig
in class ZoneAffinityServerListFilter<T extends Server>
public java.util.List<T> getFilteredListOfServers(java.util.List<T> servers)
<clientName>.<nameSpace>.ServerListSubsetFilter.eliminationConnectionThresold
(default is 0)
<clientName>.<nameSpace>.ServerListSubsetFilter.eliminationFailureThresold
(default is 0)
<clientName>.<nameSpace>.ServerListSubsetFilter.forceEliminatePercent
(default is 10%, or 0.1), the
remaining servers will be sorted by their health status and servers will worst health status will be
forced evicted.
After the elimination, new servers will be randomly chosen from all servers pool to keep the number of the subset unchanged.
getFilteredListOfServers
in interface ServerListFilter<T extends Server>
getFilteredListOfServers
in class ZoneAffinityServerListFilter<T extends Server>