其中,我們構建的內容包括: ·
eureka-server:服務註冊中心 ·
eureka-client:服務提供者 ·
eureka-consumer-ribbon-hystrix:使用ribbon和hystrix實現的服務消費者 ·
hystrix-dashboard:用於展示
eureka-consumer-ribbon-hystrix
服務的hystrix資料
下面,我們將在上述架構基礎上,引入turbine來對服務的hystrix資料進行聚合展示。這裡我們將分別介紹兩種聚合方式。
具體實現步驟如下: ·
建立乙個標準的spring boot工程,命名為:turbine。 ·
編輯pom.xml,具體依賴內容如下:
org.springframework.cloud
spring-cloud-starter-parent
dalston.sr1
org.springframework.cloud
spring-cloud-starter-turbine
org.springframework.boot
spring-boot-starter-actuator
· 建立應用主類
,並使用
@enableturbine
註解開啟turbine。
@configuration
@enableautoconfiguration
@enableturbine
@enablediscoveryclient
public class
public static void
main
(string args) }
· 在加入eureka和turbine的相關配置,具體如下: =
引數說明
· 引數指定了需要收集監控資訊的服務名; ·
turbine.cluster-name-expression
引數指定了集群名稱為default,當我們服務數量非常多的時候,可以啟動多個turbine服務來構建不同的聚合集群,而該引數可以用來區分這些不同的聚合集群,同時該引數值可以在hystrix儀錶盤中用來定位不同的聚合集群,只需要在hystrix stream的url中通過
cluster
引數來指定; ·
turbine.combine-host-port
引數設定為
true
,可以讓同一主機上的服務通過主機名與埠號的組合來進行區分,預設情況下會以host來區分不同的服務,這會使得在本地除錯的時候,本機上的不同服務聚合成乙個服務來統計。
在完成了上面的內容構建之後,我們來體驗一下turbine對集群的監控能力。分別啟動
eureka-server
、eureka-client
、eureka-consumer-ribbon-hystrix
、turbine
以及hystrix-dashboard。訪問hystrix dashboard,並開啟對
http://localhost:8989/turbine.stream`的監控,這時候,我們將看到針對服務`eureka-consumer-ribbon-hystrix`的聚合監控資料。
而此時的架構如下圖所示:
Hystrix狀態監控
一 hystrix狀態檢視 hystrix狀態可以通過 health介面檢視,需要在yml檔案中加入如下配置,指定顯示全部資訊 management security enabled false 二 測試 1 啟動註冊中心 movie user專案 2 訪問 movie findbyid?useri...
Hystrix Turbine聚合監控
之前,我們針對的是 個微服務例項的hystrix資料查詢分析,在微服務架構下,個微服務的例項往往是多個 集群化 如 動投遞微服務 例項1 hystrix ip1 port1 actuator hystrix.stream 例項2 hystrix ip2 port2 actuator hystrix....
Hystrix監控的配置詳解
在微服務架構中,hystrix處理容錯外,還有實時監控功能,在服務發生呼叫時,會將每秒請求數 成功請求數等執行指標記錄下來。本文示例 springcloud demo 其中本文相關的專案有 服務發現 eureka server discovery 鏈路追蹤 sleuth zipkin trace 服...