是否可以共享SQL Server数据库以在Asp.Net Web窗体中存储会话状态

时间:2018-03-22 08:10:12

标签: c# asp.net sql-server session sql-session-state

我有一个Asp.Net Web表单应用程序,它使用存储在SQL Server中的会话状态。

我在本文后面创建了此会话状态数据库 - 执行InstallSqlState.sql中的脚本system drive\Windows\Microsoft.NET\Framework\version\

https://support.microsoft.com/en-us/help/317604/how-to-configure-sql-server-to-store-asp-net-session-state

是否有必要为另一个应用程序创建用于存储会话状态的单独数据库?

什么是最佳做法 - 将会话状态保存在一个数据库中或使用单独的数据库?

如果我每个应用程序只使用一个会话状态数据库 - 是否存在一些问题 - 可能是安全问题等?

1 个答案:

答案 0 :(得分:2)

理想情况下,您不应跨应用程序共享会话,因为提供的默认脚本仅适用于一个应用程序。如果要支持多个应用程序,则需要更改提供的代码,这是不正确的。

如果您分享,最终可能会遇到性能瓶颈和锁定问题。

为了实现这一点,请查看此SO Post