排名
1
文章
872
粉丝
112
评论
163
.net core自定义项目模板,创建自己的模板项目,使用命令行创建模板项目
尘叶心繁 : 可以可以讲真的我都想弄个模板
net core webapi post传递参数
庸人 :
确实坑哈,我也是下班好了好几次,发现后台传递对象是可以的,但...
.net webapi 返回需要的字段,忽略某些字段,修改字段名等
雨雨雨雨雨辰 : 已精
.net webapi 返回需要的字段,忽略某些字段,修改字段名等
雨雨雨雨雨辰 :
疯狂反射
百度编辑器自定义模板
庸人 : 我建议换个编辑器,因为现在百度富文本已经停止维护了,用tinymec...
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256


欢迎加群交流技术

Ocelot要实现请求缓存非常的简单一句配置即可
Ocelot目前支持对下游服务的URL进行缓存,并可以设置一个以秒为单位的TTL使缓存过期。我们也可以通过调用Ocelot的管理API来清除某个Region的缓存。
为了在路由中使用缓存,需要在Route中加上如下设置:
"FileCacheOptions": { "TtlSeconds": 8 }
这里表示缓存8秒,8秒后过期。在缓存没有过期之前拿到的都是缓存。
我这里就暂时不演示测试了,大家自己去尝试一下即可
在配置文件的配置效果如下:
Ocelot限流 (RateLimit)
对请求进行限流可以防止下游服务器因为访问过载而崩溃
Ocelot中限流配置如下:
//限流配置
"RateLimitOptions": {
"ClientWhitelist": [ "axj" ], // 白名单
"EnableRateLimiting": true, // 是否启用限流
"Period": "10s", // 统计时间段:1s, 5m, 1h, 1d
"PeriodTimespan": 10, // 多少秒之后客户端可以重试
"Limit": 5 // 在统计时间段内允许的最大请求数量
}
意思就是10秒内只能请求5次不能在多了,如果超过5次就提示请求过多,然后在隔10分钟在发起请求
在配置文件中的配置效果如下:
测试效果如下:
可以看到当在10秒钟内请求超过规定次数就提示请求数量过多
当然限流还可以进行全局配置
比如请求超过配置的负载提示的话与返回的状态码都可以进行配置的
//限流全局配置
"RateLimitOptions": {
"DisableRateLimitHeaders": false, // Http头 X-Rate-Limit 和 Retry-After 是否禁用
"QuotaExceededMessage": "你的访问过于频繁请稍后在试", // 当请求过载被截断时返回的消息
"HttpStatusCode": 253, // 当请求过载被截断时返回的http status
"ClientIdHeader": "client_id" // 用来识别客户端的请求头,默认是 ClientId
}
用postman来测试一下
可以看到当我们填写上client_id是可以无限次数请求的
如果我们去掉,也是会被限流的
项目下载:
https://download.tnblog.net/resource/index/3e2f58ea38ce44679ee1d28add4c4e2b
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)
评价