容错与隔离

hystrix配置

Jboot的容错、隔离和降级服务、都是通过Hystrix来实现的。在RPC远程调用中,Jboot已经默认开启了Hystrix的监控机制,对数默认错误率达到50%的service则立即返回,不走网络。

Hystrix Dashboard 部署

要查看hystrix的数据,我们需要部署Hystrix Dashboard。然后通过Hystrix Dashboard来查看。

通过Gradle来编译:

  1. $ git clone https://github.com/Netflix/Hystrix.git
  2. $ cd Hystrix/hystrix-dashboard
  3. $ ../gradlew appRun
  4. > Building > :hystrix-dashboard:appRun > Running at http://localhost:7979/hystrix-dashboard

或者通过docker来运行hystrix-dashboard:

  1. docker run --rm -ti -p 7979:7979 kennedyoliveira/hystrix-dashboard

运行hystrix-dashboard成功后,通过浏览器输入http://localhost:7979/hystrix-dashboard就可以看到如下图显示:

容错与隔离 - 图1

通过 Hystrix Dashboard 查看数据

接下来,我们需要配置jboot应用的hystrix监控地址,配置如下:

  1. jboot.hystrix.url = /hystrix.stream

然后在上面图片中,填写url地址为:http://host:port/hystrix.stream,并点击monitor stream按钮,就可以看到如下图显示,所以的远程调用方法都统计到了。

注意: 如果是通过docker启动的hystrix-dashboardhttp://host:port/hystrix.stream中的host一定是本机的真实IP地址。

容错与隔离 - 图2

自定义监控隔离