我的程序目前是这样子的:
有2000个用户,需要登陆网站才能发贴.目前我是单线程,用httpwebrequest.即:用户先登陆->成功后->发贴->发贴成功->退出换用户再登陆.(当然中间有登陆失败的,暂时不考虑).因为网速问题,这个流程走完得好几十秒.我想提高效率,我能想到就是用多线程,就是不知道怎么来实现多线程,对线程还是不太懂...
还请高手指点,或有没有别的方式来提高效率...急呀...

解决方案 »

  1.   

    “这个流程走完得好几十秒”,是用户操作慢还是服务器响应慢,用户操作慢是不能通过多线程解决的,如果是服务器响应慢,要先确定什么环节慢,然后才能判断是否可用多线程。另外你所谓的httpwebrequest是指客户端连接方式吧,服务器端用的什么?ASP.NET或者SERVER服务本身就是多线程的,如果是SOCKET那就是单线程的。
      

  2.   

    本身这个网站打开就有点慢.服务器端应该是TOMCAT.我是想我的这个流程一个用户走完要几十秒,那我同时让几十个用户走,那理论上不就快起来了?
      

  3.   

    System.Net.WebException: 操作已超时。
    在 System.Net.ConnectStream.Read(Byte[] buffer, Int32 offset, Int32 size)
    在 System.IO.StreamReader.ReadBuffer()
    在 System.IO.StreamReader.ReadToEnd()看,我的程序在跑的时候有时候会报出超时..我想肯定是网络原因...慢.
      

  4.   

    几个用户同时走,服务器端已经是多线程的了,WEB服务本身就是多线程的服务,支持同时处理多用户请求。一般客户端不需要使用多线程,除非是文件下载,多线程请求反而会破坏流程的顺序。
      

  5.   

    压力测试,可以用LoadRunner录制脚本,模拟多用户并发操作.
    LoadRunner的资料网上很多,你自己可以查下.