更新时间:2024-05-06 GMT+08:00

降级

降级治理是在业务高峰期时,需要临时减少对于目标服务的访问,达到降低目标服务负载;或者屏蔽对于非关键服务的访问,保持本服务的核心处理能力的治理措施。

  • Java Chassis降级治理是作用于微服务消费者,需要微服务应用集成降级模块,启用bizkeeper-consumer处理链。

    配置示例如下:

    servicecomb:
      handler:
        chain:
          Consumer:
            default: bizkeeper-consumer

    在POM中添加如下依赖:

    <dependency>
       <groupId>org.apache.servicecomb</groupId>
       <artifactId>handler-bizkeeper</artifactId>
       <version>${project.version}</version>
    </dependency>

    详细说明请参考流量特征治理

    此处以微服务开发框架Java Chassis 2.x版本为例介绍。3.x版本配置详情请参考流量特征治理

  • Spring Cloud Huawei降级是一种治理规则,集成Spring Cloud Huawei以后,默认集成了客户端治理模块spring-cloud-starter-huawei-governance其原理为:当被流量标的路径被请求时,所有的请求百分百都会返回null,forceClosed是强制关闭降级治理的配置参数,当为true时降级治理会被强制关闭,默认值为false。

    配置示例如下:

    servicecomb:  
      matchGroup:     
        demo-test-fallback: |     
          matches:      
            - serviceName: "MyMicroservice"        
              apiPath:         
                prefix: "/"
      faultInjection:     
        demo-test-fallback: |      
          type: abort      
          percentage: 100      
          fallbackType: ReturnNull      
          forceClosed: false

    当上述配置开启时访问MyMicroservice的任意接口的请求都会被阻拦并返回错误码为500的FaultInjectionException。