五 Sentinel 集成 gateway
第五章
本章节简单介绍是对网关层 gateway 的支持。
参考文档(对主流框架的适配)1:https://github.com/alibaba/Sentinel/wiki/%E4%B8%BB%E6%B5%81%E6%A1%86%E6%9E%B6%E7%9A%84%E9%80%82%E9%85%8D
参考文档(Sentinel 如何使用)2:https://github.com/alibaba/Sentinel/wiki/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8
在 第四章 的 gateway、 nacosa 的基础上,完成两者的适配。
(1)gateway pom.xml文件
sentinel nacos gateway(2) gateway 新建 GatewayConfiguration 类
GatewayConfiguration(3)参考文档2,在GatewayConfiguration 中配置限流控制
流量控制(4)连接 控制台
gateway(5)至于 -Dcsp.sentinel.app.type=1 ,在gateway 项目 启动的时候 需要加上去。用于标记 使用gateway 进行 网关控制。
(6)nacosa 新加pom.xml依赖
nacosa pom(7)nacosa 新加properties配置
nacosa properties(8)在 nacosa 项目 新加 TestNacosaController,helloWorld 加上 注解SentinelResource
TestNacosaController(11)分别启动 nacosa 和gateway,在sentinel 控制台 看到
sentinel 控制台nacos 服务台 看到
nacos 服务台(11)访问http://localhost:9000/nacosa/test/helloWorld 看到
访问再 http://localhost:9000/nacosa/test/helloWorld2 也出现这个
说明,在gateway 中配置,限流是对 整个 nacosa 生效的
(12)在刚刚的controller 里面,给 helloWorld 方法加了 @SentinelResource 注解,在 sentinel 控制台 nacosa 项目 里加入流程控
sentinel(13)再次访问 http://localhost:9000/nacosa/test/helloWorld 出现这个,说明 整个项目的流控与单个流控 是相互生效的
request项目地址:https://github.com/renzheyizhe/demo (nacosa、gateway)