看有的文章说网站的并发数2000(http://www.litrin.net/2013/03/27/web网站的几个并发量级/comment-page-1/)就已经很高了,但是又看到有的文章说IIS并发数支持10w(http://www.cnblogs.com/dudu/archive/2009/11/10/1600062.html),不明白是什么情况了?求解答。。。。
前者是指应用程序或运行环境能承受的并发数,后者是指IIS能接收的并发请求数
那我们平时说的并发数指的是哪个呢?说一个网站的并发数
首先你要知道为何IIS的并发数需要设置,而不是需要多少开多少。
服务器的并发数越高,CPU的占用率就越高,socket保持连接也越多——内存使用也就越高。这种情况下,如果有人恶意攻击,一个DDOS,你服务器死机蓝屏都是有可能的。
如果你把并发数往下设,设在50,即使DDOS攻击来了,你的CPU和内存也保持在正常使用范围,服务器不会崩溃。
所以说,IIS的设置是限制最高并发数,而IIS真正所能达到的并发数,与平台有关(CPU,内存,带宽与请求的超时设置,应用程序池的位数(位数决定了所以拿到的最大内存数)等)。
所以,当你把你的并发数开到很大的时候,除了危险并没有别的意义,DDOS到来时,你远程都远程不上去都是有可能的,这种情况下,你会发现无能为力是什么感觉。
正常情况下,你把并发调2000,然后弄并发测试,看内存和CPU,达到了差不多80%的时候,就把那个并发设为你的IIS并发数。这是一种方式。当然,正常情况下,大家都是根本用户情况来设置并发,比如预计并发数在50以下的时候,一般维持并发数在50左右就可以了。
http://my.oschina.net/knife2013/blog/516181 看看这篇文章就明白
IIS连接数、IIS并发连接数、IIS最大并发工作线程数、应用程序池的队列长度都是什么意思了
另外服务器的实际的极限处理能力是受硬件性能和程序处理效率来共同决定的