spring cloud apigateway与consul的集成分析
发表于:2025-02-09 作者:千家信息网编辑
千家信息网最后更新 2025年02月09日,本篇内容介绍了"spring cloud apigateway与consul的集成分析"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!
千家信息网最后更新 2025年02月09日spring cloud apigateway与consul的集成分析
本篇内容介绍了"spring cloud apigateway与consul的集成分析"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
spring cloud gateway 集成 consul
工程pom.xml 引入 依赖
org.springframework.cloud spring-cloud-starter-gateway org.springframework.cloud spring-cloud-starter-consul-discovery org.springframework.boot spring-boot-starter-actuator
在启动类中增加 注解 @EnableDiscoveryClient
在配置中增加网关配置
# tomcat 配置server: port: 5000# 服务名称spring: application: name: api-gatewaycloud: # consul server地址 consul: host: localhost port: 8500 discovery: # 健康检查 一定要配置 结合 spring-boot-starter-actuator 使用 health-check-path: /actuator/health health-check-interval: 10s# 网关配置gateway: filter: remove-non-proxy-headers: headers: - dummy discovery: locator: enabled: true routes: - id: orderApi # consul 获取的服务名称 lb -> load balance uri: lb://order-server predicates: - Path=/api/order/** # 过滤 去掉路径中的 /orderApi filters: - StripPrefix=1 - id: commodityApi # consul 获取的服务名称 lb -> load balance uri: lb://commodity-server predicates: - Path=/api/commodity/** # 过滤 去掉路径中的 /api filters: - StripPrefix=1
gateway 自带限流功能 需要 redis 依赖支持
org.springframework.boot spring-boot-starter-data-redis-reactive
配置需要同步修改
routes:- id: payApi# consul 获取的服务名称 lb -> load balance uri: lb://pay-server predicates: - Path=/api/pay/**# 过滤 去掉路径中的 /orderApi filters: - StripPrefix=1# 限流操作 - name: RequestRateLimiter args: # 允许用户每秒处理多少个请求 redis-rate-limiter.replenishRate: 10 # 令牌桶的容量,允许在一秒钟内完成的最大请求数 redis-rate-limiter.burstCapacity: 20 # ip 限流 bean key-resolver: "#{@ipKeyResolver}"
注入自定义限流类型(针对 ip 限流)
@Beanpublic KeyResolver ipKeyResolver() { return new KeyResolver() { @Override public Monoresolve(final ServerWebExchange exchange) { return Mono.just(exchange.getRequest().getRemoteAddress().getHostName()); } };}
在集成过程中有个深坑,就是配置限流操作的时候,本地的redis 没有启动,导致consul的helath check一直是down状态
要解决health check问题 需要把 health check的详细返回打开, 再次调用/actuator/health接口会把详情返回了。
management: endpoint: health: show-details: always
"spring cloud apigateway与consul的集成分析"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
配置
名称
服务
路径
分析
内容
更多
知识
网关
过程
实用
最大
健康
学有所成
接下来
令牌
再次
功能
困境
地址
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全五大问题
影响网络安全的技术因素
增强网络安全意识四百字
科莱网络安全
汇丰银行数据库工作怎么样
光电缆网络技术支撑的介绍
我的世界服务器售卖网站模板
普陀区参考数据库服务费
360网络安全研讨会
是数据库中全部数据
对企业网络安全威胁最大的
网络安全行业发展
蜂巢互联网科技集团
关于网络安全漫画儿童简单
新洲计算机软件开发学校
网络技术员加工资申请
pc机上运行数据库
手机店的网络安全吗
夺畅网络技术有限公司上市了吗
常用的控制数据库安全性的方法
新天堂2怎么连接服务器不成功
阿尔比恩链手游接不到服务器
鹰角网络安全黑板报
搭建内网穿透服务器
科莱网络安全
服务器工艺装配注意事项
汽车空调软件开发
文明重启工程服务器怎么设置
大专计算机网络技术专业学校
购买网络技术开发行业标准