Webserver 网站分区和URL空间
我的网站正在成长。我需要将功能集划分到不同的服务器组,而不是在单个服务器副本上运行所有功能。我在Windows网络负载平衡设置中有8台相同的服务器Webserver 网站分区和URL空间,webserver,load-balancing,partitioning,website-hosting,Webserver,Load Balancing,Partitioning,Website Hosting,我的网站正在成长。我需要将功能集划分到不同的服务器组,而不是在单个服务器副本上运行所有功能。我在Windows网络负载平衡设置中有8台相同的服务器 问题是:我需要保持URL空间不变。什么是可行的解决方案?我不想为功能集启动新域。我在考虑某种反向代理,它具有一些基于URL的重写/路由功能(?!?)。在软件或硬件方面有什么建议吗?这将取代WNLB设置,因为它没有我需要的功能。确实有几种解决方案可以实现负载平衡: DNS循环 DNS负载平衡(使用LBS命名) 代理循环 硬件/TCP循环 我知道1)和2
问题是:我需要保持URL空间不变。什么是可行的解决方案?我不想为功能集启动新域。我在考虑某种反向代理,它具有一些基于URL的重写/路由功能(?!?)。在软件或硬件方面有什么建议吗?这将取代WNLB设置,因为它没有我需要的功能。确实有几种解决方案可以实现负载平衡:
- 对于“哑”负载平衡,Apache mod_rewrite中有一个例子(参见代理吞吐量循环部分)
- Apache mod_proxy可以充当将客户端连接到internet的代理,但通常用作反向代理,将url重定向到另一台服务器。它没有缓存功能(但可以与mod_缓存和mod_重写一起使用…)
- Squid是一种代理缓存,通常用于将客户端连接到internet。但它也可以用作反向代理,并配置为缓存请求和加速内容交付
关于硬件,我不是专家,但我认为一个“小型”到“中型”的专用服务器就足够了。只是别忘了所有的请求都会通过这台机器,所以它的大小很大程度上取决于你的流量,这看起来很不错。这可能需要对现实生活中的数据进行一些挖掘 如果您有8台服务器,我建议使用其中的7台来分担工作负载,并使用一台前端服务器作为代理 前端服务器可以运行Apache并使用mod_代理将每个HTTP请求委托给7个后端服务器中的一个。如果需要,您可以设置mod_proxy以根据传入的URL委派工作,这样您就可以,例如,让一台服务器提供视频,两台服务器提供博客条目,其余的服务器执行其他任何操作 您的前端服务器将非常轻:只运行Apache和其他一些。您还可以使用Squid或Apache的mod_缓存将静态内容缓存在此前端服务器上,以便在缓存后,对图像、js、css和其他静态内容的请求永远不会命中后端7服务器 编辑:我刚去看了帕斯卡的评论,他也提出了同样的建议。我会调整他+1