基本原理:
获得eureka客户端实例,通过客户端获取注册中心所有服务信息。
/**
* import org.springframework.cloud.client.ServiceInstance;
* import org.springframework.cloud.client.discovery.DiscoveryClient;
*
* 获取每一个服务下面实例
* 测试时,可以使用多个端口启动服务实例
*/
@Autowired
private DiscoveryClient discoveryClient;
@GetMapping("/serviceurl")
public Map<String, List<ServiceInstance>> serviceUrl() {
Map<String, List<ServiceInstance>> msl = new HashMap<>();
List<String> services = discoveryClient.getServices();
for (String service : services) {
List<ServiceInstance> sis = discoveryClient.getInstances(service);
msl.put(service, sis);
}
return msl;
}
网友评论