为动态网站实现高可用性的最佳方式是什么?如果我在另一台服务器上创建了第二个副本,并且不希望使用负载平衡器,因为它会弄乱用户会话,那么最好的替代方案是什么?
发布于 2011-06-05 15:37:32
您可以将会话数据存储在数据库中,这解决了这个问题,然后您可以轮询对应用程序服务器的请求。
(好)负载均衡器可以配置为“粘性”,这意味着它们每次都从相同的IP向相同的服务器发送请求。
发布于 2011-06-05 15:57:51
即使您有一个负载平衡器位于两个后端the服务器的前面,您也只需将单点故障转移到负载平衡器上,而不是the服务器上。因此您的应用程序仍然不是高度可用的。
我强烈建议使用负载均衡器和至少一对web服务器。在工作中,我们使用HA代理,它完全能够确保会话是“粘性的”,并被发送到相同的web服务器,除非它宕机,在那里它将进行故障转移。
为了使您的负载均衡器高度可用,您可以设置两个彼此镜像的负载均衡服务器。为两个负载均衡器分配一个虚拟IP。编写一个脚本,该脚本将轮询另一台服务器以检查它是否已关闭;如果它已关闭,则让该脚本获取该虚拟IP地址。该脚本应在两台服务器上运行。
This link描述了一种管理虚拟IP地址的方法。已经为大量linux发行版编写了类似的文章,但它们都基于相同的方法。
发布于 2011-06-05 15:39:19
负载平衡器。它们应该以能够处理会话的方式进行配置。可能每次都会发送相同的ip到相同的后台。或者将它们存储在数据库中,或者存储在一些共享内存中,如果出于某些我没有想到的原因需要非常快的话。
https://stackoverflow.com/questions/6241541
复制相似问题