得到了一个简单的场景,两个web服务器用于冗余和扩展。
但是如何使两个web服务器的设置完全冗余呢?我能想到两种解决方案;
你们通常是怎么解决这种问题的?
发布于 2011-01-12 00:24:17
如果您仅限于两台服务器,则可能会比DNS轮询更糟糕,因为每台机器上都有一个负载均衡器互相指向对方。传统上,负载均衡器本身是一个层,在自己的服务器上具有自己的冗余和故障转移。
发布于 2011-01-12 01:09:55
但是如何使两个web服务器的设置完全冗余呢?
通常情况下,你不会。通过无缝故障转移使数据库完全冗余是很困难的。而完全冗余需要额外的硬件,所以在站点变得稍微大一点之前,通常不会实现它。
您必须考虑会话状态--用户登录状态、购物车内容等。这将如何处理?
如果您的服务是完全无状态的(fx静态文件为每个用户提供不定制),那么您可以使用DNS Robin为您的站点发布2个IP地址,每个服务器一个。
如果您需要更多地控制如何处理失败,可以考虑两个web服务器,它们都通过Windows北草坪会议大楼或Linux使用Linux-HA、保留区等共享相同的IP地址(有几种可能的解决方案)。
发布于 2011-01-12 00:41:20
假设硬件负载均衡器,它们通常可以设置在一个主动/被动集群中,以便使用它们的本机信任进行故障转移。如果您使用的是软件负载均衡器(而不是微软北草坪会议大楼),那么请寻找符合VRRP标准的负载均衡器,并使用VRRP来处理负载均衡器的故障转移。如果您使用的是微软北草坪会议大楼,那么它将在扩展集群中的所有机器上运行,并自动处理机器故障。
https://serverfault.com/questions/221344
复制相似问题