服務發現Discovery(查看運行的服務)


開始吧

對於注冊到eureka里面的微服務,可以通過服務發現來獲得該服務的信息

1、 修改cloud-provider-payment8001的controller

添加一個接口用於訪問:服務發現

    // 兩種方式獲取Eureka中注冊的服務有啥內容
    @GetMapping(value = "/payment/discovery")
    public Object discovery(){
        // 第一種方式:獲取所有服務
        List<String> services = discoveryClient.getServices();
        // 遍歷每一個服務
        for (String service : services) {
            log.info("*****service: " + service);
        }

        // 第二種方式:獲取鍵名下的所有服務
        List<ServiceInstance> instances = discoveryClient.getInstances("CLOUD-ORDER-SERVICE");
        // 遍歷每一個服務
        for(ServiceInstance serviceInstance:instances){
            log.info(serviceInstance.getServiceId() + "\t" + serviceInstance.getHost()
                    + "\t" + serviceInstance.getPort() + "\t" + serviceInstance.getUri());
        }
        return this.discoveryClient;
    }

2、 主啟動類上加上@EnableDiscoveryClient注解

@SpringBootApplication
@EnableEurekaClient     //Eureka客戶端
@EnableDiscoveryClient  //啟動服務發現
public class PaymentMain8001 {
    public static void main(String[] args) {
        SpringApplication.run(PaymentMain8001.class, args);
    }
}

3、 測試訪問接口,控制台查看輸出


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM