当前位置: 首页 > 图文教程 > 服务器 > Windows服务器 > Session值不规律变化的一种可能解决方法

Windows服务器
windwos下IIS日志时间问题的解决方法
打开windowXP的21端口即用winxp架设ftp服务器
比较详细的win2003 IIS6.0 301重定向带参数的问题解决方法
服务器网站分离 给每个IIS站点建立一个用户
serv-u与屏保导致serv-u服务器经常停止无法连接的解决方法
个人FTP建站域名解析serv-u常见问题解决方法之完全解决方案
Apache2与PHP5 for WinXP简单配置技巧
远程分析win2003 IIS安全设置
三种开启重启远程终端服务的方法
服务器的ARP欺骗攻击的防范的两种解决方法
[原创]win2000 IIS支持shtml shtm的设置方法
网站被黑后处理方法及删除批量恶意代码的方法步骤
win2003 iis6 iis假死
服务器安全设置小技巧
青云服务器安全设置器2.0收费版提供下载
w3wp.exe占用cpu过高的解决方法
Windows Internet服务器安全配置指南原理篇
ReWrite学习笔记小结
Win2003主机播放FLV视频的设置图解方法
服务器一大堆错误日志的解决方法

Windows服务器 中的 Session值不规律变化的一种可能解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-04   浏览: 71 ::
收藏到网摘: n/a

碰到一个很怪异的问题,当然,有点儿程序用到Session,在Session中存放了一个对象的数组,在本地机器上都没有出现什么问题,但上传到服务器,居然出现怪事儿,放于Session中的这个对象数组的个数、顺利会发生无规律的变化 我们有一个页面显示这个数组的信息,不停的刷新页面这个数组显示的内容在不停的变化,顺序、个数(有时候能显示全部的对象,有时却少几个),真是让人很恼火,你要丢就丢吧,老子最起码知道你会丢失,但你不丢失老自己变可有点儿不厚道啦。。。
网上查了查,终于找出来原因,原来是程序池的设置作怪,有个叫“Web 园”的东西不知道被那位同事改过,这一项数值的变化会引起Session值不稳定,具体设置是“打开IIS--打开“应用程序池”中具体项的属性页中的“性能”选项卡,如图:

下方的“web 园”项中的值保证值为“1”,如果不是1,就会出现例用这个程序池的程序Session不稳定的情况发生。
百度了一下儿“web 园”,解释如下:
复制代码 代码如下:

在您创建应用程序池时,就会通知 IIS 6 创建一个工作进程,以传送指派给该应用程序池的 Web 站点、文件和文件夹的内容。您可以将应用程序池配置为启动多个,而非一个工作进程,这样可以提高可扩展性。这个功能的名为 Web 园,是小型的“Web 农场”。您无需使用多台计算机来传送相同的内容(Web 农场),而是可以使用一台计算机中的多个进程来传送相同的内容。
在将 IIS 6 应用程序配置为 Web 园时,您只需在“应用程序池属性”的“性能”选项卡的“最大工作进程数”框中,设置一个大于 1 的工作进程数。如果这个值大于 1,每个请求都将启动一个新的工作进程实例,可启动的最多进程数为您所指定的最大工作进程数。后续的请求将以循环的方式发送至工作进程。
Web 园在您的应用程序资源有限的情况下非常有用。例如,如果您到数据库的连接很慢,那么您可以使用多个工作进程来增加用户吞吐量,从而增加到数据库的连接数。
尽管在有些情况下使用 Web 园的用处非常大,但是要注意,每个工作进程的会话信息都是唯一的。由于请求以循环的方式路由到应用程序池工作进程,因此 Web 园对于会话信息存储在进程中的应用程序作用可能不大。在少数情况下,让多个工作进程运行同一个应用程序会造成资源竞争。例如,如果所有工作进程都试图将信息记录到日志文件中,或是使用那些不是专用于多个并发访问的资源,那么可能出现资源竞争问题。