-
Notifications
You must be signed in to change notification settings - Fork 495
SCT Agent 服务限流
liaochuntao edited this page Nov 23, 2022
·
4 revisions
在 Polaris Java Agent 安装目录下的 conf 文件夹,找到 application.properties 文件,并按照如下进行配置
# 配置服务名称
spring.application.name=${服务名称信息}
# 开启 polaris java agent 的服务注册发现能力
spring.cloud.discovery.enabled=true
# 设置北极星注册中心地址
spring.cloud.polaris.address=grpc\://127.0.0.1\:8091
# 设置注册的命名空间信息
spring.cloud.polaris.namespace=default
## 开启北极星的服务限流能力
spring.cloud.polaris.ratelimit.enabled=true
# 设置限流提示信息
spring.cloud.polaris.ratelimit.rejectRequestTips="Too Many Curl Action"
# 触发限流后 http 错误码
spring.cloud.polaris.ratelimit.rejectHttpCode=429
启动 Demo 应用
# 构建服务提供者
mvn clean install
java -javaagent:/data/provider-agent/polaris-java-agent-${version}/polaris-agent-core-bootstrap.jar -jar provider-2.6.11.jar
# 构建服务调用者
mvn clean install
java -javaagent:/data/consumer-agent/polaris-java-agent-${version}/polaris-agent-core-bootstrap.jar -jar consumer-2.6.11.jar
在 Spring Cloud 启动日志中,找到如下日志信息, 则表示 Polaris Java Agent 已经成功拦截原本 Spring Cloud 应用的 HttpHandler,并成功注入北极星服务限流能力。
[PolarisAgent] org.springframework.web.servlet.DispatcherServlet enable add ServletFilter to build RateLimit ability
测试服务调用
➜ agent curl http://127.0.0.1:18083/echo/hello
Hello, I'm provider, receive msg : hellomy metadata : {"internal-address":"10.21.6.36:51501","protocol":"http","internal-ip":"10.21.6.36"}%
➜ agent curl http://127.0.0.1:18083/echo/hello
"Too Many Curl Action"
➜ agent curl http://127.0.0.1:18083/echo/hello
"Too Many Curl Action"
➜ agent curl http://127.0.0.1:18083/echo/hello
"Too Many Curl Action"
- 您在使用过程中遇到任何问题,请提 Issue 或者加入我们的开发者群告诉我们,我们会在第一时间反馈
- Spring Cloud Tencent 社区期待您的加入,一个 Star、PR 都是对我们最大的支持
- 项目介绍
- 使用指南
- 最佳实践
- 开发文档
- 学习资料