1

我有文件下载站点。我要寻找的是限制每个 IP 的带宽(!)。限制应由后端的 HTTP 标头动态设置。

我当前的实现使用 X-Accel-Limit-Rate (我可以更改该标头,它在任何地方都没有硬编码),但它确实只限制当前的连接/请求。

我的想法在 G-Wan 中可行吗?

4

1 回答 1

1

是的,这是可以做到的。

编写 G-WAN 处理程序以提取X-Accel-Limit-RateHTTP 标头。然后使用此处记录throttle_reply()的G-WAN API 调用强制执行此策略。

一个名为throttle.c的可用示例可能会进一步帮助您。

throttle_reply()G-WAN 功能可让您在全局或每个连接上应用节流,因此只需根据需要应用相关的节流值IP addressesauthenticated users

throttle_reply()可以在每个连接的生命周期内动态更改下载速度,因此您可以减慢旧连接并创建具有自适应下载速率的新连接。

当然,这可以在每个客户端 IP 地址(或 cookie,甚至 ISP/数据中心 AS 记录)上强制执行,以处理巨大的工作负载。

于 2014-05-30T08:27:38.347 回答