Eureka 功能、依賴記錄


 

1. Eureka 訪問認證:

此功能的實現步驟共分爲三部:① 設置訪問路徑;② 配置 security 屬性信息;③ 添加依賴;

① 設置訪問路徑:修改 properties.yml 文件,在正常的訪問路徑中加入 user:password@ ;

 ② 配置 security 屬性信息:在 properties.yml 文件中添加如下配置,name 和 password 的值可以自己設定;

security:
  basic:
    enabled: true
  user:
    name: user
    password: 123456

 ③ 添加依賴

<!-- # eureka 頁面認證 ③/③:添加spring-boot-starter-security依賴(①:設置訪問路徑;②:配置security;) -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

完成以上配置後,訪問 Eureka 時會彈出以下信息認證提示框,需要輸入相關的認證信息 (name 和 password 的值),確定後才能進行正常訪問:

2. 監控、管理生產環境模塊:

<!-- 監控、管理生產環境模塊 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

添加此依賴後在啓動服務時,會在控制檯輸出信息中增加如下一些信息:

 以Eureka訪問地址+相關後綴可以在瀏覽器查看對應的監控信息:

      健康況狀信息:    

      當前運行環境:

 3. 健康檢查功能:

首先,該功能需要在 SpringCloud Netflix1.1 版本以上才能使用;

該功能的實現是基於上面的監控管理生產環境的,所以依然需要添加 spring-boot-starter-actuator 依賴;

實現該檢查功能需要在 properties.yml 中添加如下配置:

4. 調用  com.netflix.discovery.EurekaClient 接口的 getNextServerFromEureka(String virtualHostname, boolean secure) 方法,獲取服務提供者的 url 地址;

@GetMapping("/eureka-instance")
public String serviceUrl() {
    InstanceInfo instance = eurekaClient.getNextServerFromEureka("MICROSERVICE-PROVIDER-USER", false);
    String url = instance.getHomePageUrl();
    System.out.println("獲取到的地址信息:" + url);    // 獲取到的地址信息:http://192.168.43.119:7801/
    return url;
}

5. 調用 org.springframework.cloud.client.discovery.DiscoveryClient 接口的 discoveryClient.getLocalServiceInstance() 方法,獲取服務提供者所提供服務的多個信息;

@GetMapping("/instance-info")
public ServiceInstance showInfo(){
    ServiceInstance serviceInstance = discoveryClient.getLocalServiceInstance();
    return  serviceInstance;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章