前言
Ocelot支持上游请求的速率限制,以使您的下游服务不会过载
提示:以下是本篇文章正文内容,下面案例可供参考
一、使用步骤
1.修改Config文件夹下configuration文件配置
代码如下(示例):
{
"Routes": [
{
"DownstreamPathTemplate": "/WeatherForecast/gets",
"DownstreamScheme": "http",
"UpstreamPathTemplate": "/sss",
"UpstreamHttpMethod": [ "GET" ],
//微服务组名称
"ServiceName": "Student",
//Ocelot具有可以使用的RoundRobin和LeastConnection算法。如果未指定负载均衡器,则Ocelot将不会进行负载均衡请求
"LoadBalancerOptions": {
"Type": "RoundRobin"
},
"RateLimitOptions": {
//白名单
"ClientWhitelist": [],
//是否限流
"EnableRateLimiting": true,
//指定一个时间,例如1s,5m,1h,1d等。如果在该期间内发出的请求超出限制所允许的数量,则需要等待PeriodTimespan过去,然后再发出其他请求
"Period": "1s",
//多少时间后,可以重新请求。
"PeriodTimespan": 1,
//在Period的指定时间内,最多请求次数
"Limit": 1
}
}
],
"GlobalConfiguration": {
"ServiceDiscoveryProvider": {
"Host": "127.0.0.1",
"Port": 8500,
"Type": "Consul"
},
"RateLimitOptions": {
//DisableRateLimitHeaders-此值指定是否禁用X-Rate-Limit和Retry-After标头
"DisableRateLimitHeaders": false,
//QuotaExceededMessage-此值指定超出的消息
"QuotaExceededMessage": "Customize Tips!",
//HttpStatusCode-发生速率限制时,此值指定返回的HTTP状态代码。
"HttpStatusCode": 999,
//ClientIdHeader-允许您指定应用于标识客户端的标头。默认情况下为“ ClientId”
"ClientIdHeader": "Test"
}
}
}
2.使用Jmeter进行测试
-
Jmeter设置
-
结果查看
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。