Windows Azure上具有多个实例的会话变量

Goo*_*eed 2 .net c# azure asp.net-mvc-3 azure-sql-database

我正在研究MVC3项目和SQL Azure数据库.当我部署多个实例时,会遇到会话变量的一些问题.

为了更清楚,我将表的结果存储在会话变量中,并将结果传递给模型,用户可以修改和操作数据,直到他单击"保存"按钮.

当用户单击"保存"时,我从模型中获取新值并将它们传递给BLL和DAL层以更新数据库.

我不知道这是否是正确的解决方案!但是客户端不会在每次数据更改时都访问数据库.

请帮忙.

Leo*_*ens 8

您遇到的问题是由于会话数据本地存储在服务器上(这被ASP.NET称为I​​nProc).当您使用多个实例时,实例之间不会共享此数据.为了实现这一目标,您有两个选择:

  • 将会话数据存储在SQL Azure数据库中.
  • 将会话数据存储在Azure的表存储中.
  • 将会话数据存储在Azure的缓存服务中(可能是最快的,但也是最昂贵的).

这里有更多信息:http://acloudyplace.com/2012/02/managing-session-state-in-windows-azure-what-are-the-options/