首先,我将向您说明我的情况。我正在运行一个相当受欢迎的网站作为一个副项目,所以我不能真正投入大量资金。我目前只有一台带有 HAProxy 的服务器在前端向 Apache 发送正常请求,向 Lighttpd 发送所有静态文件请求。这非常有效,因为所有 php 和 post 请求都由 Apache 处理,而所有图像都发送到更快的 Lighttpd(该站点主要是图像,所以这非常重要)。不必为提供图像而设置子域会很好,因为短 URL 也非常重要,因此我使用 HAProxy 的原因。
我找到了一个托管服务提供商,它提供了我一直在使用的非常便宜的未计量带宽,当我开始推出 100mbs 网卡可以处理的带宽时,问题就出现了,因此需要第二台服务器。
我已经考虑了很多我的选择,所以我会向你解释每一个。希望您能提供一些见解,了解哪个对我来说是最好的选择,或者也许还有另一种我还没有想到的选择。
要求:
甚至带宽分配也是必须的。我有一个非常强大的服务器,所以不能选择扩展。我需要向外扩展以获得更多带宽。
短网址。我真的不想设置子域,比如 img.example.com,来提供我的图像。example.com/image.jpg 是现在的样子,我真的希望它留下来。但如果没有其他办法,那我就明白了。
处理请求的最近服务器会非常好,但不是必须的。要记住的事情。
HAProxy 负载均衡:
DNS 循环:
直接服务器返回:
理想情况下,如果 HAProxy 支持 Direct Server Return,那么我的问题就可以解决了。我也不想使用 CDN,因为它们真的很贵,毕竟这只是一个副项目。
你明白我的问题吗?如果我没有解释正确或者您需要更多信息,请告诉我。
我正在托管一个图像共享站点,但我似乎遇到了一个不寻常的问题。我使用 Apache 模块 mod_rewrite 使每个图像的所有 url 比其他方式短得多,但这似乎阻止了其他模块(例如 mod_bw 或 mod_bandwidth)工作,因为用户在技术上并未请求下载文件.
当有人上传 2mb 动画 gif 时会出现我的问题。有时 gif 会窃取服务器的所有带宽并使我的网站无用。我需要一种方法来检测用户何时想要查看 gif,然后将他们的速度限制在更合理的范围内。
我可以考虑这样做的唯一方法是,是否有一些 Apache 模块检测到 url 末尾的 .gif,然后启动带宽限制。这甚至可能吗?或者我还能做些什么?