public class DiscoveryClientRoundRobinLoadBalancer extends AbstractRoundRobinLoadBalancer
A LoadBalancer that uses the DiscoveryClient and a
ServiceInstance ID to automatically load balance between discovered clients in a non-blocking manner.
Note that the when DiscoveryClient caching is enabled then this load balancer may not always have the
latest server list from the DiscoveryClient (the default TTL is 30 seconds)
index| Constructor and Description |
|---|
DiscoveryClientRoundRobinLoadBalancer(String serviceID,
DiscoveryClient discoveryClient) |
| Modifier and Type | Method and Description |
|---|---|
String |
getServiceID() |
Publisher<ServiceInstance> |
select(Object discriminator) |
getNextAvailableclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitempty, fixed, selectpublic DiscoveryClientRoundRobinLoadBalancer(String serviceID, DiscoveryClient discoveryClient)
serviceID - The service IDdiscoveryClient - The discovery clientpublic String getServiceID()
getServiceID in class AbstractRoundRobinLoadBalancerpublic Publisher<ServiceInstance> select(Object discriminator)
discriminator - An object used to discriminate the server to select. Usually the service IDServiceInstance