我现在写一个网站,需要每个用户频繁访问ashx文件来读取服务器上的xml文件,
每个用户可能7~10秒中会调用一次ashx,用Jquery异步访问的。每个人读取的xml文件都不一样,不存在xml访问冲突。而且每个xml文件的数据量都很小,100byte左右,
服务器端是只需要用ashx读取xml后用不用做其他复杂操作直接返回里面的所有数据给客户端就完成任务。现在时间间隔是7~10秒,
也就是说7~10个人同时在线的话平均1秒钟便会有1次的ashx访问,7000~10000人时每秒会有1000次访问。这种情况下一般服务器能承受多少人同时在线???
附:我在测试环境下通过系统查看器看过每次访问ashx时的IIS,,IIS没有任何变化,只有页面刷新才会有变化。
    异步访问ashx是跟IIS没有关系么??? 
   上面情况下多少人能同时在线这个问题是只跟服务器IO吞吐量有关么??
不好意思,问的问题太多了,,哪位大侠帮小弟解答就跪谢了~~ 

解决方案 »

  1.   

    也就是说7~10个人同时在线的话平均1秒钟便会有1次的ashx访问,7000~10000人时每秒会有1000次访问。
    -------------------
    这个说法本身就有点问题,按LZ的描述,ashx处理一次请求的时间可能1个毫秒甚至更短就够了
    就算是极端情况下线程池和IIS请求队列都会排队,直到溢出为何不做一下简单的压力测试呢
      

  2.   


    先感谢楼上回答,,我说的是每秒的访问次数,,不是说耗时,,还有我主要想了解ashx访问量庞大时,,,是应该注意IIS压力呢还是更注意服务器数据吞吐量呢
      

  3.   


    为什么要绕弯子去读取ashx呢?为什么不直接读取xml文件?
      

  4.   

    对于客户端访问一个普通的xml文件来说,通常的web服务器(当然也包括IIS)支持304机制,因此客户端实际上可以提高上百倍的效率。而你使用ashx,我从你的描述中看不理由。我猜你是不懂304,所以才会滥用ashx(更别提aspx了)。普通文件,就算是变动的,也没有必要去绕开去使用ashx,直接就让客户端访问文件就行了啊。
      

  5.   

    楼主是不是要动态的取得数据呢,如果是动态的取得数据的话
    建议并发太高的话,缓存起来7000~10000:同时在访问你这个的理解是不对的
    7000~10000就算同时使用你的系统,也不一定都同时定位到你这个页面
    就算是你也个页面都要这样做你可以吧你的数据生成静态页面来做
    然后你的Jquery直接连接到你的静态文件就ok了,效率绝对没问题的。
      

  6.   

    这种情况下一般服务器能承受多少人同时在线???
    这种情况只能通过压力测试才能测出来.

    异步访问ashx是跟IIS没有关系么???  
    上面情况下多少人能同时在线这个问题是只跟服务器IO吞吐量有关么??

    IIS是Web服务器,当然有关系,你现在是小数据量访问,你想想如果是淘宝秒杀那种情况,你的IIS可能会崩掉了.这种情况和Web服务器并发处理量有关,要不怎么大网站都用服务器集群呢.