突然想起了一个问题,就是ServerSocket能支持多少个连接?1000?10 000?100 000?

解决方案 »

  1.   

    windows为了防止被病毒感染后成为攻击源,故限定了(1)client只能有5000个连接;(2)任何一个socket连接close后,不会释放给其他用,要等120秒(有些os,如NT,限定为240秒)。这样,每秒最大发出请求就只有 5000 / 120 = 40 /s。
     
    见附件说明(从Microsoft网站的资料)。
     
    要修改windows注册表(!注意要先备份!),将连接数改为65000,释放等待时间为30秒(不能再降低,因为socket协议要求),这样每秒就可达 65000/30 = 2100。
    即每秒可以有2100个连接!以上是我们老总的答案!!!测试得出是正确的!
      

  2.   

    在指定的端口上,只能有一个ServerSocket进行监听,但是可以与多个客户端进行连接。