服务发现Discovery
程序员文章站
2022-07-15 10:17:23
...
对于注册进eureka里面的微服务,可以通过服务发现来获得该服务的信息
1、在能够实现服务发现的服务的主启动类上添加如**解:
@EnableDiscoveryClient
2、在服务方增加如下代码进行测试:
@RestController
@Slf4j
public class PaymentController {
@Resource
private DiscoveryClient discoveryClient;
@GetMapping(value = "/payment/discovery")
public Object discovery(){
List<String> services = discoveryClient.getServices();
for(String elem: services){
System.out.println("element: " + elem);
}
List<ServiceInstance> instances = discoveryClient.getInstances("CLOUD-PAYMENT-SERVICE");
for(ServiceInstance instance: instances){
System.out.println(instance.getServiceId() + "\t" + instance.getHost() + "\t" + instance.getPort()
+ "\t" + instance.getUri() + "\t");
}
return this.discoveryClient;
}
}