加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net服务器负载均衡设置 – 它如何影响会话

发布时间:2020-12-16 10:00:57 所属栏目:asp.Net 来源:网络整理
导读:我们正在尝试通过防火墙为我们的网站设置负载平衡.我们将有两个Web服务器,即ws1和ws2,它们都运行相同的Web应用程序和进程内会话. 我的问题是,如果有人访问我们的网站并且当前在ws1上有会话,并且防火墙将它们切换到ws2,这将为他们提供ws2上的新会话.我的问题
我们正在尝试通过防火墙为我们的网站设置负载平衡.我们将有两个Web服务器,即ws1和ws2,它们都运行相同的Web应用程序和进程内会话.

我的问题是,如果有人访问我们的网站并且当前在ws1上有会话,并且防火墙将它们切换到ws2,这将为他们提供ws2上的新会话.我的问题是,如果他们在原来的会话尚未到期时切换回ws1,他们会得到一个新的会话,还是浏览器仍然会有他们的旧会话ID并带回他们的旧会话?

解决方法

使用进程内会话时,两台服务器将彼此完全无知.您的用户可能会被切换并丢失会话,然后再切换回来并让他们的旧会话“恢复”.这将为您和您的用户带来悲伤:根据您对会话的依赖程度,事情会随机消失并重新出现.

您需要查看Session State Providers,它将允许您使用公共存储来存储会话数据.典型的选择是在SQL Server中存储会话,因为您可能已经在两个服务器之间共享该会话.如果您不使用SQL Server,则可能需要为数据库编写自己的提供程序或查找由第三方创建的提供程序. (这里的悖论是,现在你的SQL Server需要负载均衡/高可用性,现在你刚刚改变了问题.)

如果这不是一个选项,您的防火墙可能支持“会话关联”或“粘性会话”,它将使用某种状态检查来跟踪会话,并确保在会话启动后,来自该会话的流量仅指向一个会话服务器.然而,这被认为是一种kludge,不应该依赖它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读