2015-07-11 51 views
-1

我正在使用ASP.NET Web窗体和我有一个应用程序持久对象实例在会话变量,但当几个客户端连接时,我有一个大问题在性能上,是否存在避免会话变量的选项?asp.net webform - 如何坚持一个对象实例beetwen页面

我需要对象实例,因为我只需要修改内存中的数据并将数据保存在客户端需求的数据库中。

在此先感谢

回答

0

您有几种选择 - 两块来立即想到是要么卸载您的会话状态,内存不足的选项,如SQL或分布式缓存(Redis的,例如 - 虽然技术上这些只是从Web服务器的角度来看内存不足)或将对象状态推入页面的视图状态。

在这两个选项中,视图状态可能会具有较少的开发开销,但是将会话状态卸载到像Redis这样的内容通常是从最佳实践角度来看的首选,因为它可以让您更好地控制对象状态的有效时间并减少多少你不得不传送给客户。这对于敏感数据来说是双重的。

请参阅下面的链接了解每个选项的更多信息。

https://msdn.microsoft.com/en-us/library/75x4ha6s.aspx

https://msdn.microsoft.com/en-us/library/z1hkazw7.aspx

https://en.wikipedia.org/wiki/Distributed_cache