将HSF(高速服务框架,High-speed Service Framework)应用接入AHAS应用防护后,可以对其配置流控、降级和系统规则来保证系统稳定性。本文介绍如何使用SDK方式将HSF应用接入应用防护。

操作步骤

  1. 登录AHAS控制台
  2. 在AHAS控制台左上角,选择应用接入的地域
  3. 在控制台左侧导航栏中选择流量防护 > 应用防护
  4. 应用防护页面右上角单击新应用接入
  5. JAVA语言页签,单击SDK接入,然后单击Dubbo/HSF应用接入
  6. 选择以下任意一种方式,在HSF应用中添加应用防护依赖。
    • 若是Spring Boot应用,则可以通过starter方式接入。在pom.xml中引入以下依赖:
      <dependency>
        <groupId>com.alibaba.csp</groupId>
        <artifactId>spring-boot-starter-ahas-sentinel-client</artifactId>
        <!-- 需指定版本号,需要≥1.7.2版本。最新版本见AHAS控制台应用防护新应用接入页引导。 -->
        <version>x.y.z</version>
      </dependency>
    • 若非Spring Boot应用,则在pom.xml中引入以下依赖:
      <dependency>
        <groupId>com.alibaba.csp</groupId>
        <artifactId>ahas-sentinel-client</artifactId>
        <!-- 需指定版本号,需要≥1.7.2 版本。最新版本见AHAS控制台应用防护新应用接入页引导。 -->
        <version>x.y.z</version>
      </dependency>

    Dubbo/HSF接入页面第一步:添加Pom依赖中查看Pom依赖最新版本,将x.y.z替换为新版本的版本号。

    HSF接入
  7. 配置应用的启动参数。
    //将AppName替换为自定义的应用名称。
    -Dproject.name=AppName
    //将AppName替换为自定义的应用名称,将 <license> 替换为真实值。
    -Dproject.name=AppName -Dahas.license=<license>

    若在公网地域,需要查看License信息。请在第二步:配置启动参数区域查看(非公网地域不需要),具体请参见查看License

    dubbo license.png
  8. 重启您的应用。
  9. (可选)您可以自定义HSF应用触发限流、降级或系统保护规则时的fallback处理逻辑,自定义HsfFallback接口并通过HsfFallbackRegistry注册即可(setProviderFallback针对服务提供方,setConsumerFallback针对服务消费方)。完成配置后,当HSF应用触发流控、降级或系统规则时,AHAS会将BlockException携带到fallback中。
    说明 若未执行此步骤,当HSF应用触发应用防护规则时,默认抛出固定的异常RuntimeException("SentinelBlockException")

结果验证

登录AHAS控制台,在左侧导航栏选择流量防护 > 应用防护,若在应用防护页面出现该应用的资源卡片且有数据上报,则说明接入成功。

应用防护.png