原文

Ocelot支持对上游做访问限流,这样就可以保证下游不要负载太大了。

如果要启用访问限流,需要做如下配置:

"RateLimitOptions": {
"ClientWhitelist": [],
"EnableRateLimiting": true,
"Period": "1s",
"PeriodTimespan": 1,
"Limit": 1
}
  • ClientWhitelist - 是和客户端白名单的数组。白名单里面的客户不受限流的限制。
  • EnableRateLimiting - 是否启用限流
  • Period - 标识限流作用于的时间段, 例如: 1s, 5m, 1h,1d 等。如果在这个时间段内访问的次数超过了限制,需要等PeriodTimespan这么久才能再次发起请求。
  • PeriodTimespan - 单位为秒,这个值标识要多少秒后才能重试。
  • Limit - 标识在指定的Period时间段里面最大能请求多少次。

可以在GlobalConfiguration里面做如下配置:

"RateLimitOptions": {
"DisableRateLimitHeaders": false,
"QuotaExceededMessage": "Customize Tips!",
"HttpStatusCode": 999,
"ClientIdHeader" : "Test"
}
  • DisableRateLimitHeaders - 是否在响应的请求头里面包含X-Rate-LimitRety-After
  • QuotaExceededMessage - 设置超过限制的提示语。
  • HttpStatusCode - 超过限制时的Http状态码。
  • ClientIdHeader - Allows you to specifiy the header that should be used to identify clients. By default it is “ClientId”

最新文章

  1. 如何在UIimageview里显示一张图片里的某一部分
  2. 【CodeVS】 p1077 多源最短路
  3. 【转】linux C++ 获取文件信息 stat函数详解
  4. Python字符串编码问题
  5. hibernate之自定义持久化实现
  6. mysql update语句,修改字段,,或者是批量修改字段
  7. emacs使用指南
  8. 使用webservice实现App与服务器端数据交互
  9. 解决Eclipse一直loading workbench无法启动的问题
  10. js中call、apply、bind那些事
  11. OOA、OOD、OOP分别是什么?
  12. lock锁速记
  13. git正确的删除远程仓库的文件并用.gitignore忽略提交此文件
  14. 《Java大学教程》—第21章 高级案例研究
  15. python下载mp4 同步和异步下载支持断点续下
  16. Python第一个GUI
  17. C# 键盘响应事件及键值对照表
  18. UPF Usage
  19. 第二百四十五节,Bootstrap标签页和工具提示插件
  20. eclipse插件-easy explore

热门文章

  1. 使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js
  2. CentOS6.9安装WordPress搭建自己的博客网站
  3. SharpZipLib压缩解压的使用
  4. 使用RAP2和Mock.JS实现Web API接口的数据模拟和测试
  5. Python--day09(内存管理、垃圾回收机制)
  6. 关于Math.round()方法
  7. 个人jQuery的使用总结
  8. Idea在@Autowired注入时报错
  9. CS程序自动更新实现原理及代码(支持多版本多文件更新)
  10. word 2013 标题设置多级列表