Ced*_*tin 3 java tomcat rate-limiting servlet-filters
我想添加一个非常简单的过滤器,对每个 IP 进行速率限制,但仍然允许突发,有点像 iptables允许做的事情。
我不想安装整个厨房水槽:我需要的只是一个实现该功能的 Filter 类。
什么是允许执行简单的“速率限制但允许短突发”的良好数据结构/算法?
例如,如果用户尝试每分钟执行超过“x”次 GET/POST,我希望提供 HTTP 错误代码,但我仍然希望使同一用户能够“突发”最多“y”(其中 y > x) 直到他达到爆破上限。
只是为了比较,这里是如何使用iptables配置类似的速率限制与突发(这只是一个示例,以展示我正在谈论的内容,即使在我的情况下,它不是关于设置速率限制+ TCP SYN 数据包突发):
iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 5
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6997 次 |
| 最近记录: |