我想在单个 apache vhost 上限制每个 IP/客户端的同时请求和限制带宽。换句话说,我想确保这个托管大型媒体文件的网站不会被试图一次下载所有内容的人所打击(前几天晚上刚刚发生)。
我想限制此站点的整体传出传输速度,并将单个 IP 可以与服务器建立的连接数限制为正常的默认值(即在多个请求的正常浏览器限制范围内,因此页面加载不是影响太大)。如果我实际上可以将其范围限定为文件类型(即不理会 Web 文件,但仅将这些规则应用于媒体文件),则可以加分。
我们在所有服务器上运行 Ubuntu 9.04,并且有两个 apache/php 服务器通过轮询由 squid 代理服务器进行负载平衡。MySQL 也在自己的机器上运行。我们有足够的带宽给他们,所以我真的不想要总体上限,而只是想限制为这个站点提供服务所需的内存/CPU 量。这些服务器上还有其他站点,我们也不想应用这些规则,只是想防止这个站点占用所有资源。
如果您需要更多信息,请告诉我!提前感谢您的建议!
尝试使用http://opensource.adnovum.ch/mod_qos/ mod_qos 现在处理任何事情 :)
http://www.cohprog.com/mod_bandwidth.html可以满足您大约 80% 的需求。
对于整形流量,您可以查看来自http://lartc.org/的 tc