對於註冊進eureka裏面的微服務,可以通過服務發現來獲得該服務的信息
1.修改8001 controller
@Autowired
private DiscoveryClient discoveryClient;
@Value("${spring.application.name}")
private String appName;
@GetMapping(value = "/discovery")
public Object discovery(){
List<String> services = discoveryClient.getServices();
for (String element : services) {
log.info("***** element:"+element);
}
List<ServiceInstance> instances = discoveryClient.getInstances(appName);
for (ServiceInstance instance : instances) {
log.info(instance.getServiceId()+"\t"+instance.getHost()+"\t"+instance.getPort()+"\t"+instance.getUri());
}
return this.discoveryClient;
}
2.主啓動類添加註解 @EnableDiscoveryClient
3.測試 後臺打印結果
***** element:eureka-service
***** element:payment-service
PAYMENT-SERVICE 192.168.163.1 8001 http://192.168.163.1:8001