前言
负载均衡算法:
RestTemplate接口请求数 % 服务器集群总数量 = 实际调用服务器的位置下标
过程
// 获取集群中可用服务列表信息 字符串格式
List<String> services = discoveryClient.getServices();
// 获取下标为0的 服务信息
String serviceInfo = services.get(0);
// 获取指定名称 : provider-service 服务列表 服务实例
List<ServiceInstance> instances = discoveryClient.getInstances("provider-service");
// 获取下标为0 的服务实例对象
ServiceInstance serviceInstance = instances.get(0);
可以通过该方法 获取指定名称的服务实例对象集合
List instances = discoveryClient.getInstances(“provider-service”);
如:
LIst[0] instances = 127.0.0.1:8081
LIst[1] instances = 127.0.0.1:8082
8081+8082 组成简单集群, 提供 2 个可用服务,集群总计 2 台
按照内部轮训算法 实现原理如下:
当客户端请求为1时 : 1 % 2 = 1 调用服务地址 127.0.0.1:8082
当客户端请求为2时 : 2 % 2 = 0 调用服务地址 127.0.0.1:8081
总结
以此类推 实现轮训集群策略