本文整理了Java中com.netflix.loadbalancer.Server.setZone()
方法的一些代码示例,展示了Server.setZone()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Server.setZone()
方法的具体详情如下:
包路径:com.netflix.loadbalancer.Server
类名称:Server
方法名:setZone
暂无
代码示例来源:origin: org.apache.camel/camel-ribbon
@Override
public <T> T process(String serviceName, ServiceLoadBalancerFunction<T> request) throws Exception {
ILoadBalancer loadBalancer = loadBalancers.computeIfAbsent(serviceName, key -> createLoadBalancer(key));
Server server = loadBalancer.chooseServer(serviceName);
if (server == null) {
throw new RejectedExecutionException("No active services with name " + serviceName);
}
ServiceDefinition definition;
if (server instanceof ServiceDefinition) {
// If the service discovery is one of camel provides, the definition
// is already of the expected type.
definition = (ServiceDefinition)server;
} else {
// If ribbon server list is configured through client config properties
// i.e. with listOfServers property the instance provided by the load
// balancer is of type Server so a conversion is needed
definition = new RibbonServiceDefinition(
serviceName,
server.getHost(),
server.getPort()
);
String zone = server.getZone();
if (zone != null) {
server.setZone(zone);
}
}
return request.apply(definition);
}
代码示例来源:origin: smoketurner/dropwizard-consul
/**
* Build a {@link Server} instance from a Consul {@link ServiceHealth} instance. If the service
* has an address defined, use that as the server host, otherwise default to using the node
* address.
*
* @param service Consul service health record
* @return Ribbon Server instance
*/
private Server buildServer(final ServiceHealth service) {
final Server server;
if (!Strings.isNullOrEmpty(service.getService().getAddress())) {
server = new Server(service.getService().getAddress(), service.getService().getPort());
} else {
server = new Server(service.getNode().getAddress(), service.getService().getPort());
}
server.setZone(service.getNode().getDatacenter().orElse(Server.UNKNOWN_ZONE));
return server;
}
}
内容来源于网络,如有侵权,请联系作者删除!