微服務架構專題九:Spring-Cloud 之 HystrixDashbord

一、/actuator/hystrix.stream

Hystrix(注意 是單純的Hystrix) 提供了對於微服務調用狀態的監控(信息), 但是,需要結合spring-boot-actuator 模塊一起使用.
在包含了 hystrix的項目中, 引入依賴:

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        

這時候訪問/actuator/hystrix.stream 便可以看見微服務調用的狀態信息;
(需要注意的是, 在Spring Finchley 版本以前訪問路徑是/hystrix.stream,如果是Finchley 的話 還得在yml裏面加配置,因爲spring Boot 2.0.x以後的Actuator 只暴露了info 和health 2個端點,這裏我們把所有端點開放。)
加入配置:

management:
  server:
    port: 5008  #自定義actuator請求接口,不配置默認就是服務端口
  endpoints:
    web:
      exposure:
        include: "*"
    health:
      show-details: always
      

在這裏插入圖片描述

這裏會發現沒有任何信息, 因爲我剛啓動項目, 我們來調用幾個接口看看:
在這裏我遇到了一個坑,因爲請求接口,/actuator/hystrix.stream的ping裏面一直沒有內容,後來查看了半天,它只監控對接口進行了hystrix監控的內容;
在這裏插入圖片描述
也可以在feign上加hystrix處理
在這裏插入圖片描述
監控到內容後的輸出:
在這裏插入圖片描述

這些密密麻麻的,就是我們的微服務監控的信息, 但是, 這種json格式的字符串, 難免會讓人不太好閱讀, 所
以, 這時候需要我們的主角登場了:

二、HystrixDashbord

(一)什麼是HystrixDashbord/如何使用?

Dashbord 翻譯一下的意思是 儀表盤, 顧名思義, hystrix監控信息的儀表盤, 那這個儀表盤到底是什麼樣子呢?
以及 怎麼來使用呢?
我們新建一個項目 加入依賴:

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
        </dependency>
        

在spring boot啓動類上面加入註解EnableHystrixDashboard

@EnableHystrixDashboard
@SpringBootApplication
public class AppHystrixDashboard {

    public static void main(String[] args) {
        SpringApplication.run(AppHystrixDashboard.class);
    }
}

啓動項目後訪問/hystrix能看見一個類似tomcat的首頁:
在這裏插入圖片描述
在中間這個輸入框中,填入需要監控的微服務的監控地址 也就是/actuator/hystrix.stream點擊按鈕,就會跳轉到儀表盤頁面:
在這裏插入圖片描述

當然, 如果你微服務沒有發生過調用, 那麼這個頁面就會一直顯示加載中, 我這裏是調用後的效果。

(二)Hystrix儀表盤解釋:

實心圓:共有兩種含義。它通過顏色的變化代表了實例的健康程度,它的健康度從綠色變成紅色再變成橙色。
該實心圓除了顏色的變化之外,它的大小也會根據實例的請求流量發生變化,流量越大該實心圓就越大。所以通過該實心圓的展示,就可以在大量的實例中快速的發現故障實例和高壓力實例。
曲線:用來記錄2分鐘內流量的相對變化,可以通過它來觀察到流量的上升和下降趨勢。
整圖解釋:
在這裏插入圖片描述

以上均爲魯班學院學習資料,歡迎大家報班學習,真心推薦!

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