配置Hystrix DashBoard 及 BUG:Unable to connect to Command Metric Stream解决
2020/3/13 17:02:33
本文主要是介绍配置Hystrix DashBoard 及 BUG:Unable to connect to Command Metric Stream解决,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言:
最近学习Hystrix时用到Hystrix DashBoard工具,Hystrix用于服务降级,服务限流,服务熔断,有一个Hystrix DashBoard工具可以监测使用了Hystrix的服务的状态。这里记录一下这玩意的配置,做个总结。
Hystrix DashBoard配置使用
1. 新建module
这里笔者用之前建立的模块 cloud-consumer-hystrix-dashboard9001 为例
2. 配置pom
这里列举重要的dependency,此外还需要服务注册,笔者用的是Eureka
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix</artifactId> </dependency>复制代码
3. 配置application.yml
server: port: 9001 eureka: instance: hostname: localhost ... ... spring: application: name: hystrix-dashboard复制代码
4. 主启动类
5. 启动HystrixDashBoard服务
简单的配置后就可以启动9001 HystrixDashBoard服务了
浏览器输入 http://localhost:9001/hystrix,成功访问
通过Hystrix Dashboard主页面的文字介绍,我们可以知道,Hystrix Dashboard共支持三种不同的监控方式
- 默认的集群监控:通过URL:http://turbine-hostname:port/turbine.stream开启,实现对默认集群的监控。
- 指定的集群监控:通过URL:http://turbine-hostname:port/turbine.stream?cluster=[clusterName]开启,实现对clusterName集群的监控。
- 单体应用的监控:通过URL:http://hystrix-app:port/hystrix.stream开启,实现对具体某个服务实例的监控。
- Delay:控制服务器上轮询监控信息的延迟时间,默认为2000毫秒,可以通过配置该属性来降低客户端的网络和CPU消耗。
- Title:该参数可以展示合适的标题。
看一下Eureka服务注册中心,注册成功了
6. 启动服务监控
选定要注册监控的服务这个服务必须要使用了Hystrix,不然会一直loading..然后报错 Unable to connect to Command Metric Stream
这里笔者就用原先配置好的Hystrix服务降级 cloud-provider-hystrix-payment8005
浏览器返回 http://localhost:9001/hystrix
不出意外就的话,就出来了,YEAH!o(* ̄▽ ̄*)ブ
当然,可能没那么顺利 ≡(▔﹏▔)≡
7. BUG:Unable to connect to Command Metric Stream
可能还会出现这个BUG,原因是spring cloud版本升级后出现的BUG,笔者用的Hoxton.SR1就会 ( ̄、 ̄)
解决办法是在 8005这个要被监听的服务的主启动类上添加下面的代码
@Bean public ServletRegistrationBean getServlet() { HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet(); ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet); registrationBean.setLoadOnStartup(1); registrationBean.addUrlMappings("/hystrix.stream"); registrationBean.setName("HystrixMetricsStreamServlet"); return registrationBean; } 复制代码
就像这样,之后就能正常访问了
至于启动后要怎么使用这个hystrix.stream就要大家去参考官网或者其他资料了
希望对你有帮助!(~ ̄▽ ̄)~
这篇关于配置Hystrix DashBoard 及 BUG:Unable to connect to Command Metric Stream解决的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-04el-table 开启定时器下,表格的选中状态会消失是什么原因-icode9专业技术文章分享
- 2024-10-03如何安装和初始化飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03如何安装 App 并连接到飞牛 NAS?-icode9专业技术文章分享
- 2024-10-03如何安装飞牛 TV 并连接到影视服务器?-icode9专业技术文章分享
- 2024-10-03如何在PVE和ESXI上安装飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS安装系统异常情况处理-icode9专业技术文章分享
- 2024-10-03飞牛NAS如何创建存储空间?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS硬盘会自动休眠吗?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何安装飞牛影视和创建媒体库?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何为家人朋友开通影视账号?-icode9专业技术文章分享