在前面介紹了spring cloud hystrix及其hystrix dashboard趟大,但都是對單個項目的監(jiān)控针贬,對于一個為項目而言棘劣,必定有很多微服務(wù),一個一個去看非常的不方便至扰,如果有一個能集中熔斷器監(jiān)控的地方就完美了鳍徽,spring cloud turbine 就實現(xiàn)了這樣的功能,這篇文章就來介紹spring cloud turbine渊胸。
(一) 版本說明
a) Spring boot 2.0.6.RELEASE
b) Spring cloud Finchley.SR2
c) Java version 1.8
d) spring-cloud-starter-netflix-hystrix 2.0.2.RELEASE
e) spring-cloud-starter-netflix-hystrix-dashboard 2.0.2.RELEASE
f) spring-cloud-starter-netflix-turbine 2.0.2.RELEASE
(二) 項目配置
1. 項目設(shè)置
a) POM設(shè)置
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-turbine</artifactId>
</dependency>
b) application.yml配置文件
eureka:
datacenter: ctm
environment: dev
instance:
hostname: 192.168.1.78
prefer-ip-address: true
ip-address: 192.168.1.129
lease-renewal-interval-in-seconds: 10
lease-expiration-duration-in-seconds: 30
instance-id: ${eureka.instance.ip-address}:${server.port}
client:
service-url:
defaultZone: http://${eureka.instance.hostname}:1001/eureka/,http://${eureka.instance.hostname}:1002/eureka/,http://${eureka.instance.hostname}:1003/eureka/
fetch-registry: true
register-with-eureka: true
healthcheck:
enabled: true
turbine:
aggregator:
cluster-config: default
app-config: clientservice,callbackservice
cluster-name-expression: new String("default")
c) 主要參數(shù)說明
i. eureka.instance.prefer-ip-address 使用IP顯示注冊信息
ii. eureka.instance.ip-address 實例IP地址旬盯,
iii. eureka.instance.instance-id 自定義實例id,服務(wù)之間調(diào)用就是使用該配置翎猛,多個實例必須保證唯一性
iv. eureka.client.service-url.defaultZone 注冊中心地址
v. turbine.app-config 設(shè)置要聚集的服務(wù)名稱,這里是指注冊的服務(wù)名字
2. 項目運行
a) 運行要監(jiān)控的服務(wù)
i. 為了演示聚集的效果接剩,這里運行了2個服務(wù)者實例后切厘,會在服務(wù)中心看到如下效果
b) 運行
i. 運行turbine項目,如下圖所示
c) 在瀏覽器中輸入消費者地址服務(wù)地址懊缺,即可看到如下效果
在看板地址中輸入http://localhost:1251/turbine.stream疫稿,然后點擊Monitor Stream 按鈕,即可看到熔斷器監(jiān)控鹃两,如果沒有數(shù)據(jù)顯示遗座,可以用任何客戶端調(diào)用幾次API,即可看到聚合后的效果俊扳。
這樣spring cloud turbine就介紹完了途蒋,如果在開發(fā)中遇到問題,也可以留言共同探討共同進(jìn)步馋记。