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

asp.net – 自定义会话状态模块 – 使用ASP状态服务

发布时间:2020-12-16 04:02:23 所属栏目:asp.Net 来源:网络整理
导读:编辑(澄清我的问题):我们可以使用我们自己的代码使用Out Of Process Asp.NET状态服务的API或方法,还是专有的? 我们正在研究实现一个custom session state module,它重新使用了asp库存模块的组件.我们的主要目标是阻止会话锁定(不将会话状态模式更改为ReadO
编辑(澄清我的问题):我们可以使用我们自己的代码使用Out Of Process Asp.NET状态服务的API或方法,还是专有的?

我们正在研究实现一个custom session state module,它重新使用了asp库存模块的组件.我们的主要目标是阻止会话锁定(不将会话状态模式更改为ReadOnly).这可能吗?

我们希望使用的关键部分之一是能够使用.NET内部使用的相同的Out of Proc会话存储提供程序(ASP状态服务),因为我们有一个负载均衡的环境,它不会使用粘性会话.

我已经在the reference source中挖掘了代码,我的发现如下.我希望有人有一个不同的实用程序,可能会用于集成ASP状态服务的自定义会话状态模块.

默认会话模块是System.Web.SessionState.SessionStateModule.这是一个Sealed类.此类似乎是唯一使用SessionStateMode.StateServer enum值的类(在Web配置中指定).

设置此标志后,模块会将_store变量设置为新的System.Web.SessionState.OutOfProcSessionStateStore,这是一个Friend Sealed类.

我最初对如何做到这一点有一些想法,并且由于上面类的修饰符,我无法做到这些.还有其他方法可以采取吗?

>实例化一个新的System.Web.SessionState.SessionStateModule并引用_store变量.这不起作用,显然是因为_store变量是私有的.
>我尝试创建一个继承自System.Web.SessionState.SessionStateModule的类,但很明显,因为它是密封的,不起作用.
>看着从.NET框架代码中复制代码.意识到这将是一个非常糟糕的决定.

我有什么选择吗?

解决方法

我建议你阅读这个主题: I just discovered why all ASP.Net websites are slow,and I am trying to work out what to do about it.

它提供了会话主题的一些起点和信息,尤其是锁定问题.

如果您寻找会话模块的自定义实现,您可以在这里查看:
http://www.codeproject.com/Articles/11712/Custom-session-state-management-in-ASP-NET

(编辑:李大同)

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

    推荐文章
      热点阅读