服务器作为网络的节点,存储、处理网络上80%的数据、信息,因此也被称为网络的灵魂。做一个形象的比喻:服务器就像是邮局的交换机,而微机、笔记本、PDA、手机等固定或移动的网络终端,就如散落在家庭、各种办公场所、">公共场所等处的电话机。我们与外界日常的生活、工作中的电话交流、沟通,必须经过交换机,才能到达目标电话;同样如此,网络终端设备如家庭、企业中的微机上网,获取资讯,与外界沟通、娱乐等,也必须经过服务器,因此也可以说是服务器在“组织”和“领导”这些设备。
它是网络上一种为客户端计算机提供各种服务的高性能的计算机,它在网络操作系统的控制下,将与其相连的硬盘、磁带、打印机、Modem及各种专用通讯设备提供给网络上的客户站点共享,也能为网络用户提供集中计算、信息发表及数据管理等服务。它的高性能主要体现在高速度的运算能力、长时间的可靠运行、强大的外部数据吞吐能力等方面。
服务器的构成与微机基本相似,有处理器、硬盘、内存、系统总线等,它们是针对具体的网络应用特别制定的,因而服务器与微机在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面存在差异很大。尤其是随着信息技术的进步,网络的作用越来越明显,对自己信息系统的数据处理能力、安全性等的要求也越来越高,如果您在进行电子商务的过程中被黑客窃走密码、损失关键商业数据;如果您在自动取款机上不能正常的存取,您应该考虑在这些设备系统的幕后指挥者————服务器,而不是埋怨工作人员的素质和其他客观条件的限制。
经常遇到一些做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以下。