SpringCloud-Hystrix-Dashboard客戶端服務(wù)監(jiān)控的實(shí)現(xiàn)方法
服務(wù)監(jiān)控
- 除了隔離依賴服務(wù)的調(diào)用以外,Hystrix還提供了準(zhǔn)實(shí)時(shí)的調(diào)用監(jiān)控(Hystrix Dashboard),Hystrix會(huì)持續(xù)地記錄所有通過Hystrix發(fā)起的請(qǐng)求的執(zhí)行信息,并以統(tǒng)計(jì)報(bào)表和圖形的形式展示給用戶,包括每秒執(zhí)行多少請(qǐng)求,多少成功,多少失敗等等。
- Netflix通過hystrix-metrics-event-stream項(xiàng)目實(shí)現(xiàn)了對(duì)以上指標(biāo)的監(jiān)控,SpringCloud也提供了HystrixDashboard的整合,對(duì)監(jiān)控內(nèi)容轉(zhuǎn)化成可視化界面!
監(jiān)控服務(wù)測(cè)試
1. 服務(wù)監(jiān)控是針對(duì)客戶端(消費(fèi)者)的,所以客戶端需要做出一些配置
2. 普通消費(fèi)者只需要添加hystrix和dashboard的依賴+@EnableHystrixDashboard就可以把消費(fèi)者變成一個(gè)監(jiān)控中心,同時(shí)也失去了消費(fèi)者的功能,不能再訪問注冊(cè)中心
一、客戶端(消費(fèi)者)
1. 新建消費(fèi)者服務(wù)9001(復(fù)制),新增監(jiān)控依賴
<!--Hystrix-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-hystrix</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-hystrix-dashboard</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
2. 修改配置文件
server: port: 9001 hystrix: dashboard: proxy-stream-allow-list: "*"
3. 為啟動(dòng)類添加支持監(jiān)控的注解

//Eureka和Ribbon整合以后,客戶端可以根據(jù)服務(wù)名稱直接調(diào)用,不用關(guān)心IP地址和端口號(hào)
@SpringBootApplication
@EnableHystrixDashboard
//@RibbonClient(name = "SPRINGCLOUD-PROVIDER-DEPT",configuration = MyLoaderBalanceConfig.class) //在微服務(wù)啟動(dòng)的時(shí)候加載自定義的Ribbon
public class DeptConsumer_hystrix_dashboard_9001 {
public static void main(String[] args) {
SpringApplication.run(DeptConsumer_hystrix_dashboard_9001.class,args);
}
}
二、服務(wù)端(生產(chǎn)者)
1. 所以的服務(wù)提供者都要添加被監(jiān)控的依賴和Hystrix的依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-hystrix</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
2. 為被監(jiān)控的服務(wù)提供者的啟動(dòng)類添加一個(gè)Bean

@Bean
public ServletRegistrationBean hystrixMetricsStreamServlet() {
ServletRegistrationBean registration = new ServletRegistrationBean(new HystrixMetricsStreamServlet());
registration.addUrlMappings("/actuator/hystrix.stream");
return registration;
}
三、查看
- 啟動(dòng)Eureka集群-7001、7002
- 啟動(dòng)服務(wù)提供者-8001,并查看Eureka集群,服務(wù)是否注冊(cè)成功
- 啟動(dòng)服務(wù)消費(fèi)者-9001
- 嘗試直接訪問服務(wù)提供者,不通過消費(fèi)者和注冊(cè)中心,http://localhost:8001/hystrix/dept/get/2
- 打開服務(wù)提供者的 http://localhost:8001/actuator/hystrix.stream,查看是否在ping
- 打開消費(fèi)者 http://localhost:9001/hystrix


疑問:9001作為一個(gè)消費(fèi)者模塊,為什么不能訪問生產(chǎn)者,難道這個(gè)模塊只是用來監(jiān)控的平臺(tái)?
tips:



到此這篇關(guān)于SpringCloud-Hystrix-Dashboard客戶端服務(wù)監(jiān)控的文章就介紹到這了,更多相關(guān)SpringCloud-Hystrix-Dashboard服務(wù)監(jiān)控內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringMVC + jquery.uploadify實(shí)現(xiàn)上傳文件功能
文件上傳是很多項(xiàng)目都會(huì)使用到的功能,SpringMVC當(dāng)然也提供了這個(gè)功能。不過小編不建議在項(xiàng)目中通過form表單來提交文件上傳,這樣做的局限性很大。下面這篇文章主要介紹了利用SpringMVC + jquery.uploadify實(shí)現(xiàn)上傳文件功能的相關(guān)資料,需要的朋友可以參考下。2017-06-06
Java list.remove( )方法注意事項(xiàng)
這篇文章主要介紹了Java list.remove( )方法注意事項(xiàng),非常簡(jiǎn)單易懂,需要的朋友可以參考下2018-08-08
SpringSecurity OAtu2+JWT實(shí)現(xiàn)微服務(wù)版本的單點(diǎn)登錄的示例
本文主要介紹了SpringSecurity OAtu2+JWT實(shí)現(xiàn)微服務(wù)版本的單點(diǎn)登錄的示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
java使用renderer將pdf按頁轉(zhuǎn)換為圖片
這篇文章主要為大家詳細(xì)介紹了java使用renderer將pdf按頁轉(zhuǎn)換為圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
java中使用Files.readLines()處理文本中行數(shù)據(jù)方式
這篇文章主要介紹了java中使用Files.readLines()處理文本中行數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12
spring cloud實(shí)現(xiàn)前端跨域問題的解決方案
這篇文章主要介紹了 spring cloud實(shí)現(xiàn)前端跨域問題的解決方案,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-01-01

