![限制 Apache 或 Nginx 上每个请求的下载和上传速度](https://linux22.com/image/704452/%E9%99%90%E5%88%B6%20Apache%20%E6%88%96%20Nginx%20%E4%B8%8A%E6%AF%8F%E4%B8%AA%E8%AF%B7%E6%B1%82%E7%9A%84%E4%B8%8B%E8%BD%BD%E5%92%8C%E4%B8%8A%E4%BC%A0%E9%80%9F%E5%BA%A6.png)
我目前正在运行几个 Web 服务器(一个基于 Apache 2.4,另一个运行 nginx 1.8)。
我需要对每个 GET/POST 请求设置速率限制,以限制下载和上传速度。
我已经在 Google 上搜索过了,但我发现的每个解决方案似乎都只关注下载速率,而且我找不到方法对请求主体中从客户端发送到服务器的数据设置限制。
我需要这个,因为大多数请求都与文件上传有关。
任何建议都将不胜感激。谢谢!
答案1
您可能找不到这些信息,因为通常不需要这些信息;您的情况太罕见了。
下载大小可为任意,甚至可以是极其巨大的,并且速率限制将允许用户之间公平分配网络容量:一次巨大的下载不会导致典型浏览速度变慢等。
但是,HTTP 上传通常有大小限制,并且它们可能会在上传过程中保留内存,只有上传结束并保存文件时才能释放内存。因此,我建议限制并发上传的数量,因为我希望单次上传尽快结束。
此外,大多数情况下的上传速度已经受到异步互联网连接的限制,因此如果您进一步限制它,您的用户将遭受糟糕的用户体验。