2008-12-12 173 views
1

我希望有人可以验证我的假设之前,我建议从30 /月我的客户升级到了80元/月托管包。ASP.NET会话状态迁移

网站:该网站是一个自定义的ASP.NET电子商务网站。购物车存储在inproc会话中。

问题在忙碌的季节,就像我们现在有用户经常失去购物车和他们的FormsAuthentication登录信息。

解决方案我想迁移该网站以使用SQL Server会话状态。我的假设是,客户正在失去他们的购物车,因为InProc会话会因为负载而更频繁地循环,然后他们的20分钟超时。将移动会话到SQL Server或会话状态服务器允许客户到商店的购物车会话不循环,如果是的话,可一旦他们将我有任何问题,如果我增加会话超时说40或60分钟

回答

2

使用SQL会话状态意味着(如果你使用这在tempdb中创建会话数据库的默认脚本,但不是SQL Server的再循环)会议应该求生存IIS的循环。

有可从Microsoft网站,创建一个永久性的会话状态数据库的脚本。我会建议使用那个(请参阅here)。

所以,基本上回答你的问题。是的,SQL会话状态将有所帮助。您可能还想考虑使用out-proc状态服务器来测试您的理论。

此外,作为同事刚才提醒我,确保任何你在会话存储被标记在迁移之前为可序列化,否则就会遇到问题。

0

这些假设对我来说听起来很合理。也可能想看看AppPool上的设置,并试图找出为什么它的回收。也许所有你需要做的就是改变这些(如果可以的话)。

+0

我在一个非常严格的共享主机,升级的原因将我移动到我自己的个人虚拟专用服务器。 – bendewey 2008-12-12 14:26:04

1

你可以给这个盒子增加一些RAM吗?这可能会有所帮助,并且可能会比将会话移动到SQL Server更便宜和更简单。当然,这只是一个权宜之计,但如果它为他们节省了$ 50 /月几年,这可能是值得的。

您还可以检查代码,看看其他一些数据在会议留给超过所需的时间多。