抗刷子的灵车工具
感觉没有说清楚用途,只能用于 nginx?rate limit 是限制请求次数,还是带宽,还是总流量?限制的时间范围?配置里的 cache, capacity, leak rate 没看懂怎么配
https://github.com/HT4w5/nyaago/wiki/Configuration-Reference
jbden 理应写概念介绍的,但是有点摆烂了还没写(
- 目前只能用于 Nginx,但是可以扩展
- rate_limit 是限制带宽
- 时间范围可以配置,iplist.entry_ttl
leak_rate 和 capacity 是 leaky bucket 的参数(也许应该向用户提供更多抽象?)
- leak_rate 代表分配给一个 client 的基准速率,单位时间 bucket 泄漏的速率
- capacity 代表 bucket 的容量
- client 的流量实时进入 bucket
- 一旦 bucket overflow,就将 Client IP 对应的 Prefix 加入黑名单进行限速
- 限速速率 = leak_rate / (volume / capacity) ^ 2
不过目前来看还有很多不合理的地方,逐渐改进吧(
jbden 第一次写比较正式的软件,看来用户和开发者的视角差别是很大的,开发者会忽略一些自己熟悉但是其实需要解释的细节,首次有这样的体会