com.netflix.loadbalancer.Server.getZone()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(6.3k)|赞(0)|评价(0)|浏览(132)

本文整理了Java中com.netflix.loadbalancer.Server.getZone()方法的一些代码示例,展示了Server.getZone()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Server.getZone()方法的具体详情如下:
包路径:com.netflix.loadbalancer.Server
类名称:Server
方法名:getZone

Server.getZone介绍

暂无

代码示例

代码示例来源:origin: spring-cloud-incubator/spring-cloud-alibaba

ansServer.setZone(server.getZone());
ansServer.setSchemea(server.getScheme());
ansServer.setId(ansServer.getHealthService().toInetAddr());

代码示例来源:origin: Netflix/zuul

this.host = server.getHost();
this.port = server.getPort();
this.availabilityZone = server.getZone();

代码示例来源:origin: Netflix/zuul

this.host = server.getHost();
this.port = server.getPort();
this.availabilityZone = server.getZone();

代码示例来源:origin: com.netflix.ribbon/ribbon-loadbalancer

@Override
  public int compare(ServerStats o1, ServerStats o2) {
    String zone1 = "";
    String zone2 = "";
    if (o1.server != null && o1.server.getZone() != null) {
      zone1 = o1.server.getZone();
    }
    if (o2.server != null && o2.server.getZone() != null) {
      zone2 = o2.server.getZone();
    }
    return zone1.compareTo(zone2);            
  }
};

代码示例来源:origin: com.netflix.ribbon/ribbon-loadbalancer

@Override
  public boolean apply(PredicateKey input) {
    Server s = input.getServer();
    String az = s.getZone();
    if (az != null && zone != null && az.toLowerCase().equals(zone.toLowerCase())) {
      return true;
    } else {
      return false;
    }
  }
}

代码示例来源:origin: org.springframework.cloud/spring-cloud-netflix-ribbon

@Override
public List<Server> getFilteredListOfServers(List<Server> servers) {
  List<Server> output = super.getFilteredListOfServers(servers);
  if (this.zone != null && output.size() == servers.size()) {
    List<Server> local = new ArrayList<>();
    for (Server server : output) {
      if (this.zone.equalsIgnoreCase(server.getZone())) {
        local.add(server);
      }
    }
    if (!local.isEmpty()) {
      return local;
    }
  }
  return output;
}

代码示例来源:origin: com.netflix.ribbon/ribbon-loadbalancer

public void incrementZoneCounter(Server server) {
  String zone = server.getZone();
  if (zone != null) {
    getZoneStats(zone).incrementCounter();
  }
}

代码示例来源:origin: org.apache.camel/camel-ribbon

@Override
  public Map<String, String> getMetadata() {
    Map<String, String> meta = metaData != null ? new HashMap<>(metaData) : new HashMap<>();
    ObjectHelper.ifNotEmpty(super.getId(), val -> meta.put("id", val));
    ObjectHelper.ifNotEmpty(super.getZone(), val -> meta.put("zone", val));
    ObjectHelper.ifNotEmpty(super.isAlive(), val -> meta.put("is_alive", Boolean.toString(val)));
    ObjectHelper.ifNotEmpty(super.isReadyToServe(), val -> meta.put("ready_to_server", Boolean.toString(val)));

    return Collections.unmodifiableMap(meta);
  }
}

代码示例来源:origin: com.netflix.ribbon/ribbon-loadbalancer

@Override
public void setServersList(List lsrv) {
  super.setServersList(lsrv);
  List<T> serverList = (List<T>) lsrv;
  Map<String, List<Server>> serversInZones = new HashMap<String, List<Server>>();
  for (Server server : serverList) {
    // make sure ServerStats is created to avoid creating them on hot
    // path
    getLoadBalancerStats().getSingleServerStat(server);
    String zone = server.getZone();
    if (zone != null) {
      zone = zone.toLowerCase();
      List<Server> servers = serversInZones.get(zone);
      if (servers == null) {
        servers = new ArrayList<Server>();
        serversInZones.put(zone, servers);
      }
      servers.add(server);
    }
  }
  setServerListForZones(serversInZones);
}

代码示例来源:origin: com.netflix.ribbon/ribbon-loadbalancer

public String toString(){
  StringBuilder sb = new StringBuilder();
  
  sb.append("[Server:" + server + ";");
  sb.append("\tZone:" + server.getZone() + ";");
  sb.append("\tTotal Requests:" + totalRequests + ";");
  sb.append("\tSuccessive connection failure:" + getSuccessiveConnectionFailureCount() + ";");
  if (isCircuitBreakerTripped()) {
    sb.append("\tBlackout until: " + new Date(getCircuitBreakerTimeout()) + ";");
  }
  sb.append("\tTotal blackout seconds:" + totalCircuitBreakerBlackOutPeriod.get() / 1000 + ";");
  sb.append("\tLast connection made:" + new Date(lastAccessedTimestamp) + ";");
  if (lastConnectionFailedTimestamp > 0) {
    sb.append("\tLast connection failure: " + new Date(lastConnectionFailedTimestamp)  + ";");
  }
  sb.append("\tFirst connection made: " + new Date(firstConnectionTimestamp)  + ";");
  sb.append("\tActive Connections:" + getMonitoredActiveRequestsCount()  + ";");
  sb.append("\ttotal failure count in last (" + failureCountSlidingWindowInterval + ") msecs:" + getFailureCount()  + ";");
  sb.append("\taverage resp time:" + getResponseTimeAvg()  + ";");
  sb.append("\t90 percentile resp time:" + getResponseTime90thPercentile()  + ";");
  sb.append("\t95 percentile resp time:" + getResponseTime95thPercentile()  + ";");
  sb.append("\tmin resp time:" + getResponseTimeMin()  + ";");
  sb.append("\tmax resp time:" + getResponseTimeMax()  + ";");
  sb.append("\tstddev resp time:" + getResponseTimeStdDev());
  sb.append("]\n");
  
  return sb.toString();
}

代码示例来源:origin: com.netflix.ribbon/ribbon-loadbalancer

return true;
String serverZone = input.getServer().getZone();
if (serverZone == null) {
logger.debug("Available zones: {}", availableZones);
if (availableZones != null) {
  return availableZones.contains(input.getServer().getZone());
} else {
  return false;

代码示例来源: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: com.netflix.zuul/zuul-core

this.host = server.getHost();
this.port = server.getPort();
this.availabilityZone = server.getZone();

相关文章