(1)添加依赖
在Consumer工程中,添加Hystrix的组件依赖。
(2)添加启动类注解
在启动类中,添加注解@EnableHystrix。
(3)添加Hystrix快速失败逻辑
Hystrix的快速失败只要在方法上添加一个@HystrixCommand,并在里面配置一个失败默认执行的方法即可,下面在Service实现类的getUserFromProvider方法中添加失败逻辑。
(4)效果演示
在Provider服务启动的情况下,调用Consumer服务的get接口http://47.95.113.117:18020/ consumer/7可以得到如下输出:
关闭Provider服务后,再次调用此接口,输出为[44]
可见,当服务提供者不可用时,服务消费者中配置了Hystrix的方法可以快速失败并且返回fallback方法默认的数据。
(5)添加可视化页面依赖
添加Hystrix的可视化监控页面,需要添加如下依赖:
(6)添加启动类注解
添加可视化页面的启动类注解@EnableHystrixDashboard。(www.xing528.com)
(7)查看页面
要查看Hystrix的监控页面,只需要在服务的IP和端口后添加/hystrix路径即可。例如此服务的Hystrix页面访问路径是47.95.113.117:18020/hystrix,如图9-8所示。
图9-8 Hystrix页面
在地址栏中输入http://127.0.0.1:18020/hystrix.stream[45],Delay默认使用2000,Title输入框输入Consumer,然后点击Monitor Stream,可以看到如图9-9所示页面。
图9-9 Hystrix监控页面
(8)页面中数据的含义
这个页面就是Hystrix用于监控展示的页面,页面分为两部分,上面为被监控方法的展示,下面为线程监控展示。
重新启动Provider服务,然后对Consumer服务的这个接口进行一定的访问,观察页面变化。如图9-10所示。
图中的上半部分最明显的两个图形元素是实心圆和变化曲线。
■实心圆会随着业务访问的压力情况变化,流量越大实心圆就越大。同时实心圆的颜色会表示这个方法的健康状态,绿色为最好,红色为最差。
■变化曲线表示流量的相对变化。
图中上半部分的数字,当移动鼠标到上面的时候会有相应的提示,各个监控数据含义如图9-11所示。
图9-10 Consumer服务监控信息
图9-11 Hystrix监控数据含义
图中下半部分的数据Thread Pools是线程监控的情况。后面会介绍线程数量的设置,也就是图中的Pool Size以及线程的定义等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。