欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

服务发现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;
    }
}

3、结果

服务发现Discovery