Asp.Net如何将Session存入Mysql

 时间:2026-02-14 01:12:55

1、web.config里面自定义session存储模式,配置如下:

主要是mode属性和数据库连接字符串的配置

<sessionState mode="Custom" customProvider="CustomSessionStoreProvider" timeout="20">

      <providers>

        <add name="CustomSessionStoreProvider"

             type="SessionStore.MySqlSessionStoreProvider, SessionStore"

             applicationName="MyAPP"

             connectionString="Server=localhost;User Id=xxx;Password=xxx;Database=xxx;charset=utf8;"

             />

      </providers>

    </sessionState>

2、开发实现SessionStore.dll,要求:

1、自动创建sessions表

2、根据sessionid动态分配用户,模拟负载均衡

3、数据库连接字符串支持加密,多个连接串按‘|’分隔

4、appname根据不同项目可自动生成,也可以统一配置

5、定时清理过期的sessioin数据

3、具体实现请参考msdn官网案例,点这里https://msdn.microsoft.com/en-us/library/ms178589(v=vs.140).aspx

4、填坑:并发导致死锁问题

(这里和官网不一致)仅针对可读写的请求才+1,客户端多个并发的请求(异步)(可读+可读写)偶尔会出现死锁的情况;

  if (lockRecord) { lockId = (int)lockId + 1;

  • php的session如何使用
  • cookie与session
  • asp.net如何做网站的总访问量
  • 什么是session机制
  • JAVA怎么设定SESSION超时?
  • 热门搜索
    cnc是什么 厚积薄发是什么意思 阿门是什么意思 越俎代庖是什么意思 唐朝灭亡后是什么朝代 斜率是什么 股市熔断是什么意思啊 什么是国债 qc小组是什么意思 2.0t是什么意思