博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
进程外Session
阅读量:6646 次
发布时间:2019-06-25

本文共 1310 字,大约阅读时间需要 4 分钟。

1、Session保存在SQLServer中配置方法:

1)运行.NetFramework安装目录下对应版本的aspnet_regsql.exe 来创建相关的数据库、表和存储过程等,比如:

C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regsql.exe -ssadd -sstype p -S 127.0.0.1 -U sa -P 123456

 

其中-sstype p表示数据库名固定为ASPState,-S(大写)为数据库服务器地址,-U和-P分别为数据库的用户名和密码,参数详细解释见 

2)修改web.config中sessionState节点的配置:<sessionState mode="SQLServer" timeout="20" sqlConnectionString="server=.;uid=sa;password=123456;" ></sessionState>

************************************************

2.(*)Session还可以保存在StateServer中, StateServer是Windows的一个服务。

 

     session保存在专门的StateServer中,该种方式,性能损失比sql略好。比inproc据说有10%-15%的性能损失。怎么使用StateServer 服务器呢?

     1、初始化StateServer服务器

          启动ASP.NET 状态服务【aspnet_state】,该服务默认是手动启动的,可以通过修改注册表,设置为自动启动并允许远程连接。修改方法如下:

          修改注册表: [HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/aspnet_state/Parameters]

          设置 AllowRemoteConnection = 1 , 设置 Port = 42424 (十进制,默认即为42424)
          AllowRemoteConnection ,0仅能本机使用,1可以供其他机器使用.
          Port是服务的端口号

    2、修改webconfig配置文件

<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="60"/>

     其中stateConnectionString中的tcpip表示StateServer服务器的ip和端口。

    注意StateServer不支持负载均衡,如果是大并发请保存在sql中。

 

参考文章:

***********************************************

3.进程外Session的对象需要“可序列化”,int、string等这些都可以,除非加标注,否则自定义类不行。以后详细讲“类的序列化” 。

4.(*)还允许自定义SessionStateProvider。进程外Session也有利于集群。

转载地址:http://meevo.baihongyu.com/

你可能感兴趣的文章
linux系统服务器负载过高问题
查看>>
6月4日
查看>>
如何使用PhoneGap程序将AdMob广告嵌入到你的HTML5 iOS游戏中
查看>>
2014工作总结
查看>>
gluster分布式存储总结与实践
查看>>
我的友情链接
查看>>
Python爬虫爬数据写入到EXCEL中
查看>>
我的友情链接
查看>>
nginx的web目录下处理中文文件和文件夹以及编码格式问题
查看>>
Linux下Tomcat重新启动
查看>>
oracle rac 监听配置
查看>>
网络***简单介绍
查看>>
代理模式与动态代理
查看>>
MySQL 5.7 开启binary log(binlog)及注意事项
查看>>
Linux crontab 任务误删恢复及备份步骤
查看>>
Tomcat集群---Cluster节点配置
查看>>
keepalive第二弹---构建轻量级的nginx高可用
查看>>
Mysql时间精度丢失问题
查看>>
MySQLSyntaxErrorException问题处理
查看>>
7_盒子模型.txt
查看>>