更新时间:2020-12-01 14:18
将PHP应用接入AHAS应用防护后,可以对其配置流控、降级、隔离和系统规则来保证系统稳定性。本文介绍如何使用SDK方式将PHP应用接入应用防护。
//将AppName替换为自定义的应用名称。 ./bin/sentinel-sidecar.sh --addr=localhost:9090 --app=AppName --daemon
//将AppName替换为自定义的应用名称,将 <license> 替换为真实值。 ./bin/sentinel-sidecar.sh --addr=localhost:9090 --app=AppName --license=<license> --daemon
若在公网地域,需要查看License信息。请在PHP语言页签查看(非公网地域不需要),具体请参见查看License。
停止应用后,可执行以下命令退出Sentinel Sidecar:
./bin/sentinel-sidecar.sh --quit
composer require ahas/sentinel "^0"
// 创建AHAS Sentinel客户端,本地sidecar默认监听9090端口。
sentinel = new \Sentinel\SentinelClient("localhost", 9090);
try {
// 获取受保护的资源访问入口,参数为埋点资源名称。
// 注意:必须定义一个变量保存入口对象,否则入口对象将被自动销毁并释放资源。
sentinelEntry = $sentinel->entry("your-resource-name");
// 在此处编写受保护的业务逻辑。
} catch (\Sentinel\BlockException $e) {
// 被Sentinel流控,在此处编写流控处理逻辑,如提示用户请求过多。
} finally {
// 将保存入口对象的变量置为null,使不再有变量引用入口对象,以销毁入口对象并释放资源。
sentinelEntry = null;
}
登录AHAS控制台,在左侧导航栏选择流量防护 > 应用防护,若在应用防护页面出现该应用的资源卡片且有数据上报,则说明接入成功。
PHP SDK目前支持流控规则、降级规则、隔离规则和系统规则:
在文档使用中是否遇到以下问题
更多建议
匿名提交