【发布时间】:2016-06-21 23:29:04
【问题描述】:
我经历了这个video - Scalability Harvard Web Development David Malan
这就是我卡住的地方。解释问题 -
假设 LB 使用的是循环法。
根据第一张图片,所有服务器都将会话存储在其本地空间中,其他服务器无法访问。如果下次有相同的请求,并且如果 LB 将此请求重定向到另一台服务器,那么该服务器将询问身份验证。从用户的角度来看,这非常令人讨厌。
按照第二张图片,所有服务器都在共享会话。在这种情况下,当下一个请求来自同一个客户端时,LB 会重定向到另一个服务器。现在,它不再要求身份验证,而是从 Session 主机获取信息。
上面的视频链接中提到了这一点。
问题 -
- 现在会话主机成为单点故障。如果主机宕机,将会严重影响可用性。我们怎样才能避免这种情况?
【问题讨论】:
-
在您的负载均衡器中实施粘性会话逻辑。也许这会起作用。或者使用客户端会话。
-
在客户端保存信息称为Cookies。但是你不能节省太多。这是 session 和 cookie 之间的一个主要区别。
标签: session architecture scalability high-availability distributed-system