Asp.Net如何将Session存入Mysql
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、自动创建ses衡痕贤伎sions表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;