经常遇到一些做WEB用户咨询服务器支持在线人数问题,在此做个简单介绍。非技术性讨论,如有疏漏或错误,敬请原谅和指导。
以普通单路服务器为例,CPU处理多个进程,并非是同一时刻处理的,(可以精确到1/1000秒),而是串行处理的。CPU通常把1秒的时间分割成N份,然后按照顺序,分别用1秒中的第1份处理第一个进程,用第二份处理第二个进程……用第N份处理第N个进程,也就是说CPU的处理能力,不是在于这一秒中内提交了多少申请,而是在于系统把CPU时间分了多少份。

例如通常系统默认进程数可以支持256个,而CPU将1秒分成100份的话,那么剩余的156个进程就要在下一秒中执行了,网卡得到请求信息后进入内存进行排队,所以通常内存大的话,会感觉支持在线人数多一些,而实质上是与CPU划分时间片是有关的,性能越高的CPU划分的时间片就可能越多,即处理速度就快。
当然在此说的一个进程并非只一个请求,一个进程通常可以包含100个相同请求,这样计算的话,CPU在1秒钟内可处理请求数为100*100=10000,然而我们知道,大部分用户不可能在一分钟内只提交一次请求,即只点击一个链接。

此外,带宽方面是支持在线人数的最关键的一个因素,服务器按照咱们所保证的最大带宽是5M,即5Mbit/s,相应的,服务器的数据最高传输速度应为5/8byte/s*1024=640K/s 。一分钟流量大约640K/S*60=38400K,假使每个用户一分钟内占用10K,即该一分钟内支持在线访问人数为3840人。(图片类和视频类站点不在此例,因为图片类视频类每个用户一分钟内绝对超过10K),但是,我们并不能保证每个用户在一分钟内只访问一个该站链接,假如每个用户在一分钟内点该站两个链接的话,那么支持在线人数应该在2000以下。
综上所说,一台中低端服务器通常最高支持在线人数为2000人左右,而且只适合普通WEB服务器和文字型论坛。不包括图片类下载类视频类等。其实一台服务器如果真是在线人数达到这么多了,也就需要加机器和带宽了!

摘自:http://support.chinaccnet.com/archives/6240.html

最新文章

  1. BZOJ 3110: [Zjoi2013]K大数查询 [树套树]
  2. uva-439
  3. Android高性能ORM数据库DBFlow入门
  4. 线段树——Ultra-QuickSort
  5. HDU 4351 Digital root 线段树区间合并
  6. 将cocos的app直接在我的设备上测试运行
  7. mvn archetyoe:generate -DarchetypeCatalog=internal
  8. smarty函数-转载
  9. selenium webdriver (python)
  10. std::string
  11. C语言描述栈的实现及操作(数组实现)
  12. RecyclerSwipeAdapterDemo【使用AndroidSwipeLayout用于列表项侧滑功能】
  13. 大话npm,cnpm和yarn
  14. OpenCV-可视化界面Image Watch
  15. xkcd 单线程下载图片
  16. CentOS6.8搭建rabbitmq消息中间件
  17. 神舟战神 HotKey 主面板无法打开? Fn+Esc失效?
  18. 在windows下安装git后没有ssh文件夹
  19. AndroidManifest详解
  20. php curl-class post

热门文章

  1. poj2029Get Many Persimmon Trees(最大矩阵和)
  2. apache开源项目--JMeter
  3. C# Word 类库的深入理解
  4. lightoj 1007
  5. [liu yanling]规范软件测试流程
  6. Storm系列(六)架构分析之Scheduler-调度器[EventScheduler]
  7. HW3.14
  8. mac使用初级
  9. MyBatis Oracle批量更新
  10. 问题-[WIN8.132位系统]安装Win8.1 遇到无法升级.NET Framework 3.5.1