除实现容错外,Hystrix还提供了实时的监控。HystrixCommand和HystrixObservableCommad在执行时,会生成执行结果和运行指标,比如每秒执行的请求数、成功数等,这些监控数据对分析应用系统的状态很有用。
使用Hystrix的模块hystrix-metrics-event-stream,就可将这些监控的指标信息以text/event-stream的格式暴露给外部系统。spring-cloud-starter-hystrix已包含了该模块,在此基础上,只须为项目添加spring-cloud-starter-actuator,就可使用/hystrix.stream端点获得Hystrix的监控信息了。
下面通过一个项目体验Hystrix的监控。
一 启动eureka
二 启动user微服务
三 启动movie微服务
四 访问
http://localhost:8010/hystrix.stream,可看到浏览器一直处于请求状态,页面空白,这是因为此时项目中注解了@HystrixCommand方法还没执行,因此也没有任何的监控数据。
五 访问
http://localhost:8010/user/1,再次访问
http://localhost:8010/hystrix.stream,可看到页面会重复出现类似于下面的内容:
这是因为系统会不断地刷新以获得实时的监控数据。Hystrix的监控指标非常全部,例如HystrixCommand的名称,group名称、断路器状态、错误率、错误数等。
1170

被折叠的 条评论
为什么被折叠?



