Hystrix插件

说明

  • hystrix插件是网关用来对流量进行熔断的核心实现。
  • 隔离模式支持 threadsemaphore

插件设置

请参考运维部署的内容,选择一种方式启动shenyu-admin。比如,通过 本地部署 启动Apache ShenYu后台管理系统。

  • 在 基础配置 --> 插件管理 --> hystrix,设置为开启。 如果用户不使用,可以将其关闭。

Hystrix插件 - 图1

在网关中引入 hystrix 插件

  • 在网关的 pom.xml 文件中添加 hystrix的依赖。
  1. <!-- apache shenyu hystrix plugin start-->
  2. <dependency>
  3. <groupId>org.apache.shenyu</groupId>
  4. <artifactId>shenyu-spring-boot-starter-plugin-hystrix</artifactId>
  5. <version>${project.version}</version>
  6. </dependency>
  7. <!-- apache shenyu hystrix plugin end-->

hystrix 插件配置

关于选择器和规则配置的更多说明,请参考:选择器和规则管理, 这里只对部分字段进行了介绍。

选择器配置

用于对流量第一次筛选,不需要特殊处理字段。

Hystrix插件 - 图2

规则配置

用于对流量最终筛选,有规则处理逻辑,隔离模式支持 threadsemaphore

Hystrix插件 - 图3

  • hystrix处理详解:

    • 跳闸最小请求数量:最小的请求量,至少要达到这个量才会触发熔断。

    • 错误百分比阀值: 这段时间内,发生异常的百分比。

    • 最大并发量: 最大的并发量。

    • 跳闸休眠时间(ms):熔断以后恢复的时间。

    • 分组Key: 一般设置为:contextPath

    • 失败降级URL: 默认为 /fallback/hystrix

    • 命令Key: 一般设置为具体的路径接口。