基于服务器的身份验证的可伸缩性问

时间:2016-09-06 10:30:46

标签: authentication server scalability

我正在阅读基于服务器的身份验证问题。我需要帮助详细阐述以下几点。

  

可伸缩性:由于会话存储在内存中,因此会产生可伸缩性问题。当我们的云提供商开始复制服务器来处理应用程序负载时,在会话内存中获取重要信息将限制我们扩展的能力。

我似乎不明白为什么“......在会话记忆中拥有重要信息将限制我们的扩展能力”,这将限制扩展能力。是因为信息被复制了......所以这与冗余有关吗?我不这么认为。无论如何,是否有人能够进一步解释这一点?非常感谢。

2 个答案:

答案 0 :(得分:1)

被引用的是无状态和有状态服务器端操作之间的区别。有状态服务器保留其部分资源(主要是主内存),用于保留与某个客户端相关的状态,即使服务器实际上什么都不为客户端做什么,只是等待客户端返回。这样的系统'表现形象是"线性"只有到所有可用内存都被状态填充的点,超过这一点,服务器似乎基本上停止了。无状态服务器只在他们实际执行某些操作时保留资源,并且一旦完成操作,这些资源立即被释放并可供其他客户端使用。这样的服务器基本上不受内存限制的限制,因此更容易扩展"。

此外,给出的解释似乎是指场景,其中一组不同的机器作为一个存在于外部世界,而实际上它们不是(这通常被称为"簇&# 34;机器/服务器)。在这种情况下,如果客户已连接到大单个虚拟机",那么实际上他只连接到其中一个"实际机器"在群集中。如果状态保留在那里,那么同一个客户端的后续访问必须被路由到同一个物理机器,或者必须将该状态路由到下一次访问所遇到的任何机器。前者意味着实现管理功能,这些功能采用自己的资源集,加上集群分配负载的自由限制(与您希望进行集群的原因相反),后者意味着额外的网络流量将限制可扩展性与可用内存基本相同。

答案 1 :(得分:0)

基于服务器的身份验证使用会话,而会话又使用本地会话ID。在云中,当复制服务器以处理应用程序负载时,一台服务器很难知道哪些会话在其他服务器上处于活动状态。现在要克服这个问题,必须执行额外的步骤...例如,将会话ID保存到数据库。但是,随着服务器的日益复制,处理所有这些变得越来越困难。因此,基于服务器或基于会话的身份验证可能会导致可伸缩性问题。