您现在的位置: PQ秀秀网 >> PQ知道 >> 正文 用户登录 新用户注册
请问windows2003+IIS6.0+ASP环境下到底能支持多个Session呢? Web 开发 / ASP
作者:佚名    文章来源:不详    点击数:加载中...    更新时间:2008-7-12 字体:[ ]
添加到收藏: 添加到百度收藏  收藏到QQ书签  添加到雅虎收藏  添加到新浪ViVi  添加到天极网摘  添加到和讯网摘

请问windows2003+IIS6.0+ASP环境下到底能支持多个Session呢?

楼主xiaoyaohudie()2006-12-21 11:07:43 在 Web 开发 / ASP 提问

小弟开发了一个教师在线调查系统,在提交之前是将所有的数据放在Session里的,每个用户在提交这一刻之前Session变量的总数大概会达到150个(或更多)左右,如果有200台电脑同时调查的话,是否会超出Session数量的范围而出错.  
  问题点数:100、回复次数:25Top

1 楼jxsddboy22(此人已死,有事烧纸)回复于 2006-12-21 11:16:22 得分 5

不知道会不会出错,反正影响效率是肯定的Top

2 楼yeaky()回复于 2006-12-21 11:18:03 得分 5

也就3W个,应该没问题  
  单算内存的话不会太多,  
  最好还是用.net吧,写在类里面,应该简单一些。Top

3 楼raybvb09(www.our1983.com←83年出生的来玩)回复于 2006-12-21 11:29:33 得分 5

似乎是没有数量限制,不过150个SESSION??你的服务器能受得了?测试过吗Top

4 楼webmm(一笑而过)回复于 2006-12-21 11:41:01 得分 5

在线调查到一半,session消失,还必须重来,不建议-_-Top

5 楼friendlyFour(web开发四人组)回复于 2006-12-21 12:15:47 得分 5

这样做是会发生一些异常的现象,以前也遇到过。(没有lz的session的个数多)。  
  换一种方法好了!Top

6 楼FEB15(张郎)回复于 2006-12-21 12:21:19 得分 5

你也够辛苦的了,用隐藏表单和Session完全一样,只是一个占用客户端资源一个占用服务器资源。  
   
  楼主要练习一下JavaScript了,这样的系统如果人数达到一定量,太耗费资源了,这样的程序你以后面试的时候拿出来展示,我第一个不要你。Top

7 楼deknight(追逐梦想)回复于 2006-12-21 12:28:47 得分 5

倘若你Server.ScriptTimeOut   =   999  
  嘿嘿。。。Top

8 楼xiaoyaohudie()回复于 2006-12-21 13:03:05 得分 0

我已经决定用另外一种方法了?将所有要调查的教师的信息全放在一个Session变量里,中间用特殊字符分开,再将所有的调查答案放在另外一个Session变量里,加上其它的控制流程的Session变量总共才不到10个,到数据提交到数据库的时候再进行分割至本地变量中提交,不知这种方法有没有什么很大的缺陷,请大家指点一下.Top

9 楼xiaoyaohudie()回复于 2006-12-21 13:04:18 得分 0

倘若你Server.ScriptTimeOut   =   999  
  嘿嘿。。。  
  ======================================  
  我在数据提交到服务器数据库后用Session.Contents.RemoveAll将所有的Session销毁了.Top

10 楼showlin(六斤八两八)回复于 2006-12-21 13:13:51 得分 5

session的机制基于cookies,cookies限制一个站20个,总共4k大小Top

11 楼yizia(椅子)回复于 2006-12-21 13:19:15 得分 5

把非敏捷对象保存在session中的时候,例如ado中   的connection对象  
   
  我做过测试,和内存可以说成正比。  
   
  所以除非是很小的应用,图方便,我才会把这些东西保存在session中Top

12 楼yizia(椅子)回复于 2006-12-21 13:19:48 得分 5

 
  补上:受数据库连接池限制影响,是500个sessionTop

13 楼xiaoyaohudie()回复于 2006-12-21 13:26:08 得分 0

补上:受数据库连接池限制影响,是500个session  
  ----------------------------------------------  
  这位兄台可否说明白些,Session数量大小与数据库有关系?我已经用60机电脑做了测试,Session变量大概已经超过8000个了,但没出什么问题,我是怕如果同时调查的人数更多的话会出问题的.Top

14 楼SDDKILLER()回复于 2006-12-21 13:36:07 得分 5

这种数据交换还是别用SESSION了要不然真的会累死的,推荐隐藏表单传递,session这种东西还是少用为妙,毕竟服务器是独立运行,客户机可以分布式运行,这样可以减轻N多压力  
   
  PS:喝多了,不对的地方请高手提出~Top

15 楼opelmk()回复于 2006-12-21 14:46:51 得分 5

Cookies吧Top

16 楼yeaky()回复于 2006-12-21 15:13:57 得分 5

楼主是同时啊,如果用隐藏域的话,服务器的负担会很重,不见得比现在用session好吧?  
  几W个session不算什么的,应该可以用,占内存应该也是10M以内!!  
  只要你自己不做乱了,应该没有问题。Top

17 楼yeaky()回复于 2006-12-21 15:15:18 得分 5

如果怕出问题  
  最好是让用户分时段进行Top

18 楼yeaky()回复于 2006-12-21 15:20:19 得分 5

一个用户怎么可能有150个session呢?  
  有150个题目?把答案全放在session里了?再一次性提交服务器?如果这样的话,这方法也太烂了吧?Top

19 楼xiaoyaohudie()回复于 2006-12-21 17:20:20 得分 0

是很烂,我是个大菜鸟啊!Top

20 楼rqrq()回复于 2006-12-21 20:53:34 得分 5

可以把内容写进数据库,然后在客户端生成一个cookie来辨识。Top

21 楼minkingshine(sk)回复于 2006-12-21 22:46:27 得分 5

按照系统设计来说   兄弟这样做出来的东西   就算是不超出session的最大   范围   做出来的也是   lj(恕我直言)  
  session   变量是存放在服务器端的     一个session大概占20k吧!(不知道是多少了)你做的一个系统   一个用户提交一次就有150个session     你想想就算是再好的服务器   运行起来我看也是够呛Top

22 楼xiaoyaohudie()回复于 2006-12-22 08:58:15 得分 0

我已经用另外一种方法了,将所有要调查的教师的信息全放在一个Session变量里,中间用特殊字符分开,再将所有的调查答案放在另外一个Session变量里,加上其它的控制流程的Session变量总共才不到5个,到数据提交到数据库的时候再进行分割至本地变量中提交,不知这种方法有没有什么很大的缺陷,请大家指点一下.  
  Top

23 楼ishion(爱森)回复于 2006-12-22 09:46:25 得分 5

如果特别多的话,可以用数组,  
  应该是500个Top

24 楼xiaoyaohudie()回复于 2006-12-23 10:08:00 得分 0

怎么没人讨论了啊Top

25 楼yizia(椅子)回复于 2006-12-23 23:52:04 得分 10

那我再简单总结一下吧。  
   
  数据存储方案:  
  调查表A(a1,用户id...)  
  调查表B(b1,b2,b3...)  
  调查数据表C(a1,b1,b2,b3...)  
   
  每个用户开始填写调查表,就在表A的a1插入一个不重复的值,我们称呼为考卷编号,当然了,要把用户id插入进去才能建立关联;  
   
  通过表B,生成多页调查问卷;  
   
  每页调查问卷用form提交,依次保存到表C;  
   
  这样做还有一个好处,断电续答……  
  Top

文章录入:andy    责任编辑:andy 
  网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)