|
发表于 2012-3-22 17:31:25
|
显示全部楼层
重庆市重庆市
以普通单线(路)服务器为例,CPU处理多个进程,并非是在同一时刻进行的(可以精确到1/1000秒),而是串行处理的。CPU通常把1秒的时间分割成几份,然后按照顺序,分别用1秒钟的第1份处理第1个进程,用第2份处理第2个进程……用第N份处理第N个进程,也就是说CPU的处理能力,不是在于这1秒钟内提交了多少申请,而是在于系统把CPU 处理工作的时间分了多少份。
例如,通常系统默认可以支持256个进程,而CPU将1秒分成100份的话,那么剩余的156个进程就要在下一秒钟执行了。网卡得到请求信息后,将请求信息送入内存进行排队,所以通常内存大的话,会感觉支持在线人数多一些,而实质上是与CPU划分时间片有关的,性能越高的CPU划分的时间片就可能越多,即处理速度就快。
当然在此所说的一个进程并非只是一个请求,一个进程通常可以包含100个相同请求,这样计算的话,CPU在1秒钟内可处理请求数为100 X 100=10 000,然而我们知道,大部分用户不可能在1分钟内只提交一次请求,即只点击一个链接。
此外,带宽的大小是支持同时在线人数最关键的因素之一,服务器按照保证的最大带宽是5M (即5Mbit/s ),相应的,服务器的数据最高传输速度应为 5Mbit/s x 1024/8=640KB.1分钟流量大约640 x 60=38 400KB。假设毎个用户1分钟内始终占用10KB的流量,即该1分钟内支持占用这样的流量的同时在线访问人数为3840人。(图片类和视频类站点不在此例, 因为此类站点每个用户1分钟内占用的流量大多数超过10KB。)但是,并不能保证每个用户在1分钟内只有一个到该站的链接,假如每个用户在1分钟内有两个到该站的链接(每个链接始终占用10KB的流量),那么支持 在线人数应该在2 000以下。
综上所述,一台中低端服务器通常支持在线人数最高为2000人左右,而且只适合普通网站建设后的服务器和文字型论坛,不包括图片类、下载类、视频 类等。其实一台服务器如果在线人数能够达到这么多,那运营者也肯定是赚了不少钱,也就需要增加机器和带宽了。
租用的虚拟主机空间通常都受在线人数控制,有的可能支持50人同时在线,有的可能支持100人同时在线。如果超过了,网站则打不开,会出现因为目前访问网站的用户过多的错误提示信息。
在线人数可以称为ns连接数或者并发连接数。当一个网页被浏览时,服务器就会和浏览者的浏览器建立链接,每个链接表示一个并发。当页面包含很多图片时,图片并不是一个一个显示的,服务器会产生出多个链接同时发送文字和图片以提高浏览速度。页面中的图片越多,服务器的并发链接数量就越多。当图片或页面被服务器发送后服务器就关闭此链接,和其他请求者建立链接。每次并发几乎是瞬间完成的,一般在几毫秒至几十毫秒。通常分以下几种情况(以100MB空间50人在线为例)。
*用户单点下载文件,结束后正常断开,这些链接是按照瞬间计算的,也就是说50人的网站同时可以接受50个点下载。
*用户打开页面,就算停留在页面没有对服务器发出任何请求,那么在用户打开一个页面的20分钟内也都要算一个在线,就是说50人的网站20分钟内可以接受不同用户打开50个页面。
*上一种情况下用户继续打开同一个网站建设后的其他页面,那么在线人 数按照用户最后一次点击(发出请求)以后的20分钟计算,在这20分钟内不管用户怎么点击(包括新窗口打开)都还是一人在线。
*当页面内存在框架(iframe )时,那么每多一个框架就要多一倍的在线数量,因为这相当于用户同一时间向服务器请求了多个页面。
*当用户打开页面然后正常关闭浏览器时,用户的在线人数也会马上清除。
在选用空间时,一定要先判断自己网站的访问人数是否较多,空间在线人数是否够用。如果超出支持的在线人数范围,搜索引擎会对经常出现错误的网站予以降权或者除名处理。
eWinSock支持库
|
|