Application.Lock是应该少用,但你这个例子不应该吧,因为你就是在Session_Start/Session_End里用,会不会是Session过期频繁?你的程序用Session么?你可以试着用ACT校验一下,用一个空页面

解决方案 »

  1.   

    首先要确定是否是由于网站压力造成的问题?95个用户不算多。在发布到网上之前应该自己用ACT或者LoadRunner等可以测试网站压力的软件先自己压力测试一下。在使用这些压力测试软件时可以记录一些性能计数,比如:Process,Thread,.NET的所有计数器。
      

  2.   

    Application.Lock的用意我不太清楚
    为什么不先试一下这样的代码:
    lock(Application["UserCount"])
    {
    Application["UserCount"] = ...
    }最起码这样的代码可以减少锁定的对象的粒度,性能应该要高一点
    而Application.Lock应该不是用在这个地方的嗯
      

  3.   

    应该是你服务器的问题..一般的服务器IIS连接数100左右..你到了95也差不多了...问问你的控件服务商就明白了..程序是对的
      

  4.   

    我原来就这么写过,没错误
    我想bingbingcha(不思不归,不孟不E,原来是头大灰狼)说的很有道理
    学习一下
      

  5.   

    中国万网的服务器,winserver2003-----------------------------------------如果我的这种方法,当在线人数达到95人,就是说服务器IIS连接数到了 95,如果我不加这个程序,就是当时真的达到了95,服务器IIS连接数也只是 1 吗?
    -------------------------------------------------------------------------这个网站  http://www.rczx.com 访问量是经常比这个要大的,每天在3000左右,只是以前我没有加这个在线人数据统计的程序,,不过,从来没出现过任何毛病 !
      

  6.   

    我想起来了,我最后看一次是达到了 99 人
    然后,我关闭了IE,又过了几分钟,我在上首页,首页就老慢了,好几分钟,也打不开,有可能真是这个原因,不过,在以前我没加入这个程序之前,访问量比同时在线人数 100 的时候要多的多,为什么什么毛病 没出现过呢,现在我把这个程序去掉后,现在 http://www.rczx.com 首页访问速度很快,而且一切正常!!
      

  7.   

    一般比较简单的计数器就是这样做的,百人左右的在线人数不应该出现这种问题的,我觉得可能是程序其它地方或者虚拟主机的问题,另外你可以试试不用application变量而用xml文件或数据库来保存在线人数看看会不会再有问题
      

  8.   

    我看有可能是在 Application.Lock  的问题上。我在多试试
    多谢各位大哥!!