java网关限流_网关实现限流达到自我保护

网关实现限流达到自我保护,只需要对 网关服务端 做配置。

网关限流参数

1、创建项目

2、修改 pom.xml 文件

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

com.sxt

zuul-geteway-ratelimt

0.0.1-SNAPSHOT

org.springframework.boot

spring-boot-starter-parent

1.5.13.RELEASE

UTF-8

UTF-8

1.8

org.springframework.cloud

spring-cloud-dependencies

Dalston.SR5

pom

import

org.springframework.boot

spring-boot-starter-web

org.springframework.cloud

spring-cloud-starter-eureka

org.springframework.cloud

spring-cloud-starter-zuul

com.marcosbarbero.cloud

spring-cloud-zuul-ratelimit

1.3.4.RELEASE

3、修改全局配置文件

3.1、全局配置文件

spring.application.name=zuul-geteway-ratelimt

server.port=9020

eureka.client.serviceUrl.defaultZone=http://user:123456@eureka1:8761/eureka/,http://user:123456@eureka2:8761/eureka/

#访问路由

zuul.routes.e-book-product-provider.path=/product/**

zuul.routes.e-book-product-provider.serviceId=e-book-product-provider

#访问路由

zuul.routes.e-book-order-provider.path=/order/**

zuul.routes.e-book-order-provider.serviceId=e-book-order-provider

#全局配置限流

zuul.ratelimit.enabled=true

##60s 内请求超过 3 次,服务端就抛出异常,60s 后可以恢复正常请求

zuul.ratelimit.default-policy.limit=3

zuul.ratelimit.default-policy.refresh-interval=60

##针对 IP 进行限流,不影响其他 IP

zuul.ratelimit.default-policy.type=origin

3.2、局部配置文件

spring.application.name=zuul-geteway-ratelimt

server.port=9020

eureka.client.serviceUrl.defaultZone=http://user:123456@eureka1:8761/eureka/,http://user:123456@eureka2:8761/eureka/

#访问路由

zuul.routes.e-book-product-provider.path=/product/**

zuul.routes.e-book-product-provider.serviceId=e-book-product-provider

#访问路由

zuul.routes.e-book-order-provider.path=/order/**

zuul.routes.e-book-order-provider.serviceId=e-book-order-provider

############局部限流:针对某个服务进行限流 ############

# 开启限流,针对某个,zull.ratelimit.policies.服务名.

# 没有被限流的服务不受该配置影响

zuul.ratelimit.enabled=true

##60s 内请求超过 3 次,服务端就抛出异常,60s 后可以恢复正常请求

zuul.ratelimit.policies.e-book-product-provider.limit=3

zuul.ratelimit.policies.e-book-product-provider.refresh-interval=60

##针对某个 IP 进行限流,不影响其他 IP

zuul.ratelimit.policies.e-book-product-provider.type=origin

4、添加启动类

5、测试

首次访问

60秒内第4次访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值