服务注册与发现【Eureka】- 服务发现Discovery

对于注册进Eureka里面的微服务,可以通过服务发现来获得该服务的信息。

就是每一个微服务自身暴露出来的服务自身的相关介绍信息(类似于一个企业网站的“关于我们”),比如:主机名称、端口号.....

 

修改服务提供者的Controller,引入 DiscoveryClient

    @Autowired
    DiscoveryClient discoveryClient;

    /**
     * 服务发现
     * @return
     */
    @GetMapping(value = "/discovery",produces = { "application/json;charset=UTF-8" })
    public Map<String,Object> discovery(){

        Map<String,Object> map = new HashMap<>();

        map.put("discoveryClient",discoveryClient);

        List<String> services = discoveryClient.getServices();
        map.put("services",services);

        List<ServiceInstance> instances = discoveryClient.getInstances("CLOUD-PAYMENT-SERVICE");
        map.put("instances",instances);

        return map;
    }

 

主启动类添加注解:@EnableDiscoveryClient

 

 

测试:

启动EurekaServer ,7001 / 7002 服务

启动 8001 

访问

 

 其他几个服务提供者也使用相同的方式来做服务发现。

 

posted @ 2020-07-30 21:57  糖油包子  阅读(262)  评论(0编辑  收藏  举报