您好,登錄后才能下訂單哦!
本篇文章為大家展示了使用SpringCloud-Hystrix-Dashboard怎么客戶端服務進行監控,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
除了隔離依賴服務的調用以外,Hystrix還提供了準實時的調用監控(Hystrix Dashboard),Hystrix會持續地記錄所有通過Hystrix發起的請求的執行信息,并以統計報表和圖形的形式展示給用戶,包括每秒執行多少請求,多少成功,多少失敗等等。
Netflix通過hystrix-metrics-event-stream項目實現了對以上指標的監控,SpringCloud也提供了HystrixDashboard的整合,對監控內容轉化成可視化界面!
1. 服務監控是針對客戶端(消費者)的,所以客戶端需要做出一些配置
2. 普通消費者只需要添加hystrix和dashboard的依賴+@EnableHystrixDashboard就可以把消費者變成一個監控中心,同時也失去了消費者的功能,不能再訪問注冊中心
1. 新建消費者服務9001(復制),新增監控依賴
<!--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. 為啟動類添加支持監控的注解
//Eureka和Ribbon整合以后,客戶端可以根據服務名稱直接調用,不用關心IP地址和端口號 @SpringBootApplication @EnableHystrixDashboard //@RibbonClient(name = "SPRINGCLOUD-PROVIDER-DEPT",configuration = MyLoaderBalanceConfig.class) //在微服務啟動的時候加載自定義的Ribbon public class DeptConsumer_hystrix_dashboard_9001 { public static void main(String[] args) { SpringApplication.run(DeptConsumer_hystrix_dashboard_9001.class,args); } }
1. 所以的服務提供者都要添加被監控的依賴和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. 為被監控的服務提供者的啟動類添加一個Bean
@Bean public ServletRegistrationBean hystrixMetricsStreamServlet() { ServletRegistrationBean registration = new ServletRegistrationBean(new HystrixMetricsStreamServlet()); registration.addUrlMappings("/actuator/hystrix.stream"); return registration; }
啟動Eureka集群-7001、7002
啟動服務提供者-8001,并查看Eureka集群,服務是否注冊成功
啟動服務消費者-9001
嘗試直接訪問服務提供者,不通過消費者和注冊中心,http://localhost:8001/hystrix/dept/get/2
打開服務提供者的 http://localhost:8001/actuator/hystrix.stream,查看是否在ping
打開消費者 http://localhost:9001/hystrix
疑問:9001作為一個消費者模塊,為什么不能訪問生產者,難道這個模塊只是用來監控的平臺?
tips:
上述內容就是使用SpringCloud-Hystrix-Dashboard怎么客戶端服務進行監控,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。