经常玩电脑的,对电脑有一定了解的人都知道,对于一台电脑,最重要的无非就是处理器、主板和显卡,这三个配件都是种类繁多。我们用来玩游戏的主机和游戏服务器的主机有着很大区别,同样,作为必不可少的配件之一,主板,同样有着区别,由于主机和服务器的侧重点不同,两者的主板也有不同侧重,正确区分服务器主板和普通PC机主板,拒绝做“小白”!
普通的家用和办公电脑的主板,主要需求是在性能和功能上而服务器主板则是专门为了满足服务器应用——高稳定性、高性能、高兼容性的环境,而开发的主机板。由于服务器的高运作时间,高运作强度,以及巨大的数据转换量,电源功耗量,I/O吞吐量,因此对服务器主板的要求是相当严格的。
服务器主板和普通电脑主板的区别,主要由以下几点:
1、服务器主板一般都是至少支持两个处理器——芯片组不同(往往是双路以上的服务器,单路服务器有时候就是使用台式机主板)。
2、服务器几乎任何部件都支持ECC,内存、处理器、芯片组(但高阶台式机也开始支持ECC)
3、服务器很多地方都存在冗余,高档服务器上面甚至连CPU、内存都有冗余,中档服务器上,
硬盘、电源的冗余是非常常见的,但低档服务器往往就是台式机的改装品,不过也选用一线大厂电源。
4、由于服务器的网络负载比较大,因此服务器的网卡一般都是使用TCP/IP卸载引擎的网卡,
效率高,速度快,CPU占用小,但目前高档台式机也开始使用高档网卡甚至双网卡。
5、硬盘方面,已经很多而且越来越多的服务器将用SAS /SCSI 代替SATA。
6、 在内存支持方面。由于服务器要适应长时间,大流量的高速数据处理任务,因此其能支持高达十几GB甚至几十GB的内存容量,而且大多支持ECC内存以提高可靠性(ECC内存是一种具有自动纠错功能的内存,由于其优越的性能使造价也相当高)。
7、 存储设备接口方面。中高端服务器主板多采用SCSI接口、SATA接口而非IDE接口,并且支持RAID方式以提高数据处理能力和数据安全性。
8、 在显示设备方面。服务器与工作站有很大不同,服务器对显示设备要求不高,一般多采用整合显卡的芯片组,例如在许多服务器芯片组中都整合有ATI的RAGE XL显示芯片,要求稍高点的就采用普通的AGP显卡。而如果是图形工作站,那一般都是选用高端的3DLabs、ATI等显卡公司的专业显卡。
9、 在网络接口方面。服务器/工作站主板也与台式机主板不同,服务器主板大多配备双网卡,甚至是双千兆网卡以满足局域网与Internet的不同需求。
10、最后是服务器的价格方面。一般台式机主板顶天也不过1、2千,而服务器主板的价格则从1千多元的入门级产品到几万元甚至十几万元的高档产品都有!
以上,就是服务器主板和普通PC机主板的区别,由于服务器需要更大得数据吞吐量,需要更强的数据处理能力,服务器主板比普通主板的功能更为强大。由于PC机的普及,更多的厂商也开始生产研发高端电脑主板,并且应用在普通主机上,相信在不远的将来普通主板具有服务器主板的性能,也想成为可能。
------------------------------------------------------------------------
服务器基础知识【初学者必看】
标签: 服务器ftp服务器磁盘windowsinternet网络
2011-07-29 09:36 4747人阅读 评论(0) 收藏 举报
分类:
服务器(15) 网络文摘(70)
1. 什么是服务器
就像他的名字一样,服务器在网络上为不同用户提供不同内容的信息、资料和文件。可以说服务器就是Internet网络上的资源仓库,正是因为有着种类繁多数量庞大内容丰富的服务器的存在,才使得Internet如此的绚丽多彩。
2. 服务器的种类和功能
(1) WWW服务器(WWW Server)
WWW服务器也称为Web服务器(Web Server)或HTTP服务器(HTTP Server),它是Internet上最常见也是使用最频繁的服务器之一,WWW服务器能够为用户提供网页浏览、论坛访问等等服务。比如:我们在使用浏览器访问
http://www.discuz.NET的时候,实际上就是在访问Discuz!的WWW服务器,从该WWW服务器获取需要的论坛资料和网页。
(2) FTP服务器(FTP Server)
FTP服务器是专门为用户提供各种文件(File)的服务器,FTP服务器上往往存储大量的文件,例如:软件、MP3、电影、程序等等。用户只要使用FTP客户端软件登录到FTP服务器上就可以从FTP服务器下载所需文件和资源到自己的电脑上,同时,
你也可以把自己电话上的文件上传到FTP上供其他用户下载,以实现文件资源的共享。
(3) 邮件服务器(Mail Server)
e-mail是Internet上应用最频繁的服务之一,而Internet上每天数亿百亿计的电子邮件的收发都是通过邮件服务器实现的。邮件服务器就像邮局一样,可以为用户提供电子邮件的接收存储和发送服务。
除了以上介绍的3种主要服务器之外,还有很多其他类型的网络服务器,例如:数据库服务器(DatabaseServer)、代理服务器(Proxy Server)、域名服务器(Domain Name Server)等等……
3. 服务器的操作系统
目前服务器中使用的操作系统主要有两类:Windows和Unix。
(1) Windows
Windows是美国微软公司(Microsoft)开发的操作系统,在服务器领域,主要有Windows2000Server/Advanced Server/Data Center与Windows2003 Standard Edition/EnterpriseEdition操作系统,Windows的优点是操作简
单,由于Windows使用图形界面进行操作,因而对各种服务器软件功能配置简便。但它的缺点也不可忽视,例如:Windows操
作系统成本较高;安全性相对较低;能承受的访问量较低等等。
(2) Unix
Unix的历史很久远,其种类和分支错综复杂。就目前来说应用最广泛的Unix系统是Linux,Linux并非由哪家公司发行,Linux由世界各个角落的热爱程序与网络人共同开发、维护。Linux完全免费,与Windows相比,Linux的成本为0。
Linux除了成本上的优点之外,还具备很多非常优秀的特点,例如:性能极高、稳定性很好、安全等等。目前,大多数大中型
企业(包括电信企业和Google、百度、新浪、搜狐等等)的服务器都运行在Unix/Linux系统之上。
4. Apache与IIS
Apache与IIS都属于WWW服务器,是世界上使用最多的两种WWW服务器。
(1) IIS
IIS的全称是:InternetInformation Server,由微软(Microsoft)公司开发,是Windows操作系统的一部分。IIS是允许在Internet上发布信息的Web服务器。IIS通过使用超文本传输协议(HTTP)传输信息。还可配置IIS 以提供文件传输
协议(FTP)服务。FTP服务允许用户从Web节点或到Web节点传送文件。
IIS的特点是配置简单,配置界面很友,功能较强,同时提供对ASP/ASP.Net的支持。但IIS的性能和安全性相对较差,并且IIS只能在Windows中使用,无法在UNIX中运行。
(2) Apache
Apache是世界排名第一的WWW服务器, 根据Netcraft(www.netcraft.com)所作的调查,世界上百分之六十以上的Web服务器在使用Apache。
Apache 的特性:
1) 几乎可以运行在所有的计算机平台上(包括Windows)
2) 强大的功能配置;
3) 支持通用网关接口(CGI);
4) 支持虚拟主机;
5) 支持HTTP认证;
6) 内部集成了代理服务器;
7) 具有用户会话过程的跟踪能力;
8) 支持FASTCGI;
9) 支持Java SERVLETS;
什么是服务器?
服务器是网络上一种为客户站点提供各种服务的计算机,它在网络
操作系统的控制下,将与其相连的硬盘、磁带、打印机、Modem及昂贵的专用通讯设备提供给网络上的客户站点共享,也能为网络用户提供集中计算、数据库管理等服务。
● 网络服务器的作用:
A. 运行网络操作系统。通过网络操作系统控制和协调网络各工作站的运行,处理和响应各工作站同时发来的各种网络操作请求。
B. 存储和管理网络中的软硬件共享资源,如数据库、文件、应用程序、打印机等资源。
C. 网络管理员在网络服务器上对各工作站的活动进行监视控制及调整。
从结构来说,目前服务器正从RISC服务器向IA服务器发展,在中小型网络中尤其如此。
● 热插拔技术
○ Hot Swap,又称为热交换技术、热插拔技术。允许服务器在不关机状态下更换故障硬盘等热插拔设备。
○ 热切换技术与RAID技术配合起来,可以使服务器在不关机状态下更换故障硬盘,并且自动恢复原盘上的数据,极大地提高了服务器系统的容错能力。
○ 硬盘热插拔有两种方式:
A. 采用热插拔硬盘盒配以普通SCSI硬盘,多用于磁盘阵列中。
B. 采用具有热插拔能力的专用硬盘,是高性能服务器的标准配置。
○ 热插拔技术今后将向热插拔电源、热插拔PCI插卡等方向发展。
● 硬盘接口技术
IDE: (Intergraded drive electronics) 现在PC机使用的主流硬盘接口。
SCSI:(Small Computer System Interface) 小型计算机系统接口。SCSI技术源于小型机,目前已移植到PC服务器及高档PC机上。相对于IDE接口,SCSI接口具备如下的性能优势:
a. 独立于硬件设备的智能化接口:减轻了CPU的负担。
b. 多个I/O并行操作:因此SCSI设备传输速度快。
c. 可联接的外设数量多:可扩展多个外设(如硬盘、磁带机等)。
当同时访问到服务器的网络用户数量较多时,使用SCSI硬盘的系统I/O性能明显强于使用IDE硬盘的系统。
SCSI总线支持数据的快速传输。不同的SCSI设备通常有8位或16位的SCSI传输总线。在多任务操作系统,如Windows NT下,在同一时刻可以启动多个SCSI设备。SCSI适配器通常使用主机的DMA(直接内存存取)通道把数据传送到内存。这意味着不需要主机CPU的帮助,SCSI适配器就可以把数据传送到内存。为了管理数据流,每一个SCSI设备(包括适配卡)都有一个身份号码。通常,把SCSI适配器的身份号码设置为7,其余设备的身份号码编号为0到6。
大部分基于PC的SCSI总线使用单端接的收发器发送和接受信号。但是,随着传送速率的增大和线缆的加长,信号会失真。为了最大限度的增加总线长度并保证信号不失真,可以把差分收发器加到SCSI设备中。差分收发器使用两条线来传送信号。第二条线为信号脉冲的反拷贝。一旦信号到达目的地,电路比较两条线的脉冲,并生成原始信号的正确拷贝。
一种新的差分收发器 - LVD(低压差分收发器),能够增加总线长度并且能够提供更高的可靠性和传输速率。LVD能连接15个设备,最大总线长度可达12米。
目前常用的SCSI系列:
Narrow Wide
Wide
接口
传输速率
接口
传输速率
Fast Fast SCSI
10 MB/S
Fast Wide SCSI
20MB/S
Ultra Ultra SCSI
20MB/S
Ultra Wide SCSI
40MB/S
Ultra2 Ultra2 SCSI
40MB/S
Ultra2 Wide SCSI
80MB/S
/
Ultra 3
160MB/S
SCSI与IDE的区别
○ IDE的工作方式需要CPU的全程参与这种情况在Windows95/NT的多任务操作系统中,自然就会导致系统反应的大大减慢。而SCSI接口,则完全通过独立的高速的SCSI卡来控制数据的读写操作,CPU就不必浪费时间进行等待,显然可以提高系统的整体性能。
○ SCSI的扩充性比IDE大,一般每个IDE系统可有2个IDE通道,总共连4个IDE设备,而SCSI接口可连接7~15个设备,比IDE要多很多,而且连接的电缆也远长于IDE。
虽然SCSI设备价格高些,但与IDE相比,SCSI的性能更稳定、耐用,可靠性也更好
● RAID技术
○ RAID:(Redundant Array of Inexpensive Disk)廉价冗余磁盘阵列。由于磁盘存取速度跟不上CPU处理速度的发展,从而成为提高服务器I/O能力的一个瓶颈。RAID技术利用磁盘分段、磁盘镜像、数据冗余技术来提高磁盘存取速度,同时提供磁盘数据备份、提高了系统可靠性。
○ 磁盘分段(Disk Striping):数据以"段"为单位依次读写多个磁盘,多磁盘相当于同时操作,存取速度极大地提高。
○ 磁盘镜像(Disk Mirroring):用一个控制器控制两个磁盘,同时读写相同的数据,数据100%备份。
○ 数据冗余技术:数据读写时做校验,校验数据以紧凑格式存于磁盘上,可用于纠错及恢复数据。
○ RAID技术目前常用的有几个系列:
RAID 级别
描述
技术
速度
容错能力
RAID 0
磁盘分段
没有校验数据
磁盘并行I/O,存取速度提高最大
数据无备份
RAID 1
磁盘镜像
没有校验数据
读数据速度有提高
数据100%备份(浪费)
RAID 2
磁盘分段+汉明码数据纠错
/
没有提高
允许单个磁盘错
RAID 3
磁盘分段+奇偶校验
专用校验数据盘
磁盘并行I/O,速度提高较大
允许单个磁盘错,校验盘除外
RAID 4
磁盘分段+奇偶校验
异步专用校验数据盘
磁盘并行I/O,速度提高较大
允许单个磁盘错,校验盘除外
RAID 5
磁盘分段+奇偶校验
校验数据分布存放于多盘
磁盘并行I/O,速度提高较大,比RAID 0稍慢
允许单个磁盘错,无论哪个盘
磁盘系统作好RAID 5后,任一块磁盘出现故障后,系统仍可运行,故障盘上的数据可通过其它盘上的校验数据计算出来(此时速度要慢一些)。如果磁盘系统中有备份盘,则数据自动恢复到备份盘中。如果具备热插拔硬盘,则在开机状态下即可换下故障硬盘,数据将自动恢复到新硬盘上。在这些过程中,系统并没有停止运行。
● SMP技术简介
○ SMP:Symmetric Multiprocessing . 即对称多处理。指在一个计算机上汇集了一组处理器(多个CPU)。多处理是指一台计算机中的多个处理器通过共享同一存储区来协调工作。真正意义上的多处理要求系统中的每个CPU能访问同一物理内存。这意味着多CPU必须能使用同一系统总线或系统交换方式。
操作系统对多处理体系结构的支持是与其核心紧密相连的,这将涉及两个用于支持多处理的基本序列算法:对称和非对称处理。非对称处理中,CPU各有各的任务;对称处理中,每个CPU可执行任何任务。SMP系统通过将处理负载分布到各个空闲的CPU上来增强性能。处理分布或执行线程中,各CPU的功能是相同的。它们共享内存及总线结构,系统将处理任务队列对称地分布于多个CPU上,从而极大地提高了系统的数据处理能力。
○ 对称多处理首先在网管方面表现出高性能,这应归因于SMP系统强大的处理能力和SMP操作系统的兴起。支持SMP的网络操作系统:Novel Netware、SCO UNIX、Microsoft Windows NT等。
○ SMP技术特别适合于需要集中使用处理器的服务,如应用服务器、通信服务器。很多应用程序升级到SMP平台后并不需要重写。
○ SMP技术是今后PC服务器的发展方向。
● 机箱技术
○ 立式机箱
○ 基座式
○ 机架安装式
● 内存技术
内存的家族也很庞大,有许多不同的类别。按照存储信息的功能,内存可分为RAM(Random Access Memory,随机存取存储器)和ROM(Read Only Memory,只读存储器)。ROM是非易失性的元件,可靠性很高,存储在ROM里的数据可以永久的保存,而不受电源关闭的影响,所以,ROM一般用来存储不需修改或经常修改的系统程序,像主板上的BIOS程序。根据信息的可修改性难易,ROM也可分为MASK ROM,PROM,Flash Memory等,其中,MASK ROM,PROM属于早期的产品,ROM这一族经过一连串的演化,从使用只能写一次的PROM,利用紫外线清除的EPROM,利用电气方式清除的EEPROM,一直到现在主板上经常使用的一般电压就可清除的Flash Memory。现在计算机的发展速度相当快,主板厂商也需经常升级BIOS,所以用Flash Memory存储BIOS程序就成为首选,RAM既是我们通常所说的内存,也是我们需关注的主要方面,现做一下介绍。
○ RAM的分类
RAM主要用来存放各种现场的输入、输出数据,中间计算结果,以及与外部存储器交换信息和作堆栈用。它的存储单元根据具体需要可以读出,也可以写入或改写。由于RAM由电子器件组成,所以只能用于暂时存放程序和数据,一旦关闭电源或发生断电,其中的数据就会丢失,故属于易失性元件。现在的RAM多为MOS型半导体电路,它分为动态和静态两种。动态RAM(DRAM)是靠MOS电路中的栅极电容来记忆信息的。由于电容上的电荷会泄漏,需要定时给与补充,所以动态RAM需要设置刷新电路(Refresh),如此一来,需要花费额外的时间;而静态RAM(SRAM)是靠双稳态触发器来记忆信息的,不须重复的做刷新的动作即可保存数据,所以存取速度要比DRAM快上许多。但动态RAM比静态RAM集成度高、功耗低,从而成本也低,适于作大容量存储器。所以高速缓冲存储器(Cache)使用SRAM,而主内存通常采用DRAM。我们平常所接触的内存条就是由DRAM芯片构成的。
○ DRAM的种类
FPM DRAM(Fast Page Mode DRAM),即快速页面模式的DRAM。
EDO DRAM(Extended Data Out DRAM),即扩展数据输出DRAM。速度比FPM DRAM快15%~30%。它和FPM DRAM的构架和运作方式相同,只是缩短了两个数据传送周期之间等待的时间,使在本周期的数据还未完成时即可进行下一周期的传送,以加快CPU数据的处理。
BEDO DRAM(Burst EDO DRAM),即突发式EDO DRAM。是一种改良式EDO DRAM。
SDRAM(Synchronous DRAM)即同步DRAM。目前十分流行的一种内存。工作电压一般为3.3V,其接口多为168线的DIMM类型。它最大的特色就是可以与CPU的外部工作时钟同步,和我们的CPU、主板使用相同的工作时钟,如果CPU的外部工作时钟是100MHZ,则送至内存上的频率也是100MHZ。
○ REGISTERED 内存
○ ECC内存
错误检查与校正内存(ECC)提供了一个强有力的数据纠正系统。ECC内存不仅能检测一位错,而且它能定位错误和在传输到CPU 之前纠正错误,将正确的数据传输给CPU。允许系统进行不间断的正常的工作,ECC内存能检测到多位错(而奇偶校验内存就不能达到这一点)并能在检测到多位错时产生报警信息,但它不能同时更正多位错。
ECC的工作过程是这样的:当数据写到内存中时,ECC将数据的一个附加位加识别码,当数据被回写时,存储的代码和原始的代码相比较,如果代码不一致,数据就被标记为"坏码",然后坏码会被纠正,并传输到CPU中,如果检测到多位错时,系统就会发出报警信息。
● 常见操作系统
○ MicrosoftWindows NT Server 4.0 中/英文
○ MicrosoftWindows 2000/2003 中/英文
○ SCO OpenServer5.0.5
○ SCO UnixWare7.1.1
○ Red Hat 6.2/7.0
○ TurboLinuxServer 6.1
○ SUN Solaris 7/8中/英文
○ Windows NT / Windows 2K/2003
· 与windows客户机集成较好
· 提供一定的文档和应用服务器兼容能力
· 简化安装和管理工作,操作系统易于使用,用户界面好
· 提供更多的开发工具,第三方厂商应用支持较多
· 目前在中小用户中的增长势头较快
· 大型环境中目录不易管理
· 与其他操作系统相比,可靠性较差
· 改变配置后,系统需重新启动
○ SCO UNIX
· 在高性能的RISC机器中扩展性较好
· 可轻松改变网络配置
· 安全性、可靠性高
· 提供内置的多用户能力
· 最早,最广泛地支持Internet标准
· 该平台上的应用极为丰富
· 在国内金融等重要行业中用户较多
· 用户界面较差,维护、管理、使用复杂
· 没有可靠的开发工具
○ NetWare
· 单CPU的文件服务器性能优异
· 高性能的目录服务可轻松管理大型环境
· 在国内早期中小用户中使用较多
· 关键服务与SMP无关
· 缺乏第三方厂商支持
· 没有可靠的开发工具
○ LINUX
· 免费的多任务多用户的操作系统
· 性能稳定,占用空间小
· 可运行在Intel、SPARC、Alpha平台
· 没有专门的技术支持部门
· 对一些设备的驱动能力还不是很完善
○ Solaris
· 安装方式多样,自动化程度高
· 处理数据的能力很高
· 可与各种平台实现互操作
· 软件价格昂贵
· 对基于Intel的服务器技术支持较弱
windows平台可以看看《Windows Server 2003服务器架设与管理》。
作为推荐,这里我主要还是推荐自己仔细研读过的书,而我读过的书中某些可能已经很老了,甚至内容已经过时了,因此,这只算是抛砖引玉,大家可以选择类似的更新、更权威的书籍学习。
基础知识主要包括:语言。这里之所以拿出来说,是因为某些语言可能导致你使用完全不同的思路来设计服务器。一般来说,C/C++、Java、C# 之类可以归为一类,而 Go、Erlang 和他们区别很显著。关于语言的经典书籍太多,这里就不说了。
网络。想了解协议底层实现,可以看《TCP/IP 详解 卷2》。上层开发时,Windows 下可以看《Network Programming for Microsoft Windows》,Linux 下可以直接看看官方相关的 API 文档。Windows 下 IOCP,Linux 下 epoll(其他类 Unix 下的技术类似)是需要掌握的。实际开发中,网络库可能自己实现,也可以基于某些开源库开发,所以,无论是出于学习还是使用目的,都可以研究一下开源库,例如 libuv、libevent、boost ASIO。
操作系统相关。类 Unix 系统比较好的书籍就是《Advanced Programming in the UNIX Environment》了,Windows 下则可以看看《Windows核心编程》。系统相关的最核心的东西可能就是线程、进程,以及相关同步的内容了,看看《Multithreading applications in Win32》挺不错(包括类 Unix 系统下的开发者)
数据库。主要看你选择 SQL 还是 NOSQL。基本上搞搞 mysql、redis 不会错。
一些思想。光会各种技术是不能写出好的代码的,可能还需要学习一些更抽象的知识,所谓的一些”哲学“或者开发的指导思想。比较推荐的是《UNIX 编程艺术》,还有一本书《精益思想》,这本书和编程完全无直接关系。
《网络游戏核心技术与实战》日本人写的网络游戏服务器端开发的书, 结合游戏开发讲到了服务器端的方方面面, 但是相对的可能不够深入. 适合入门, 对游戏和技术有更好的理解. 然后就可以针对特定的技术领域, 比如网络, 数据存储等找专门的书来看了. 单纯从技术角度而言, 基础的东西并没有太多的不同. 只是网络游戏服务器端的应用领域相对狭窄, 所以市面上专门的书籍并不多。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)