三分钟带你读懂服务器的组织结构!
最近一位朋友跟我说,想了解服务器方面的知识。确实,对于普通用户而言,感觉服务器很神秘,不知道服务器到底是个什么东西,那么当你看完这篇文章,你就会明白服务器到底是个什么了。
1,服务器的概念
我们先来看一下服务器的概念:也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
首先可以很明确的告诉你,服务器也是电脑,服务器是为电脑提供服务的电脑,既然是电脑,那么它也一样是由CPU,主板,内存条,硬盘,机箱,电源等硬件组成。
还是拿人类来举例子,如果说电脑是人类的话,那么,服务器就是人类中的医生或者公务员
或者其他不同的角色,也就是说,都是人类,只是不同人通过学习一些专业技能然后赋予了不同的角色。
现在理解一些了么?也就是说一台电脑,如果它安装某些特殊的软件用于某种专业的用途,那么它就可以叫做是某种服务器。这是软件层面的,硬件层面的后面再说。
比如最常见的网站服务器,当你在浏览器里敲入百度的时候,最终你的电脑是访问到的另外一台电脑,这台电脑会被安装网站服务的软件,并且会有网站方面的网站程序,最终起作用的是这些软件跟程序,这台电脑啥事情都不干,专门用来响应大家的访问请求,于是乎,他就叫做网站服务器,也叫web服务器,现实中并不是一台电脑,而是很多很多台电脑专门干这个事情,因为全球这么大的用户量,如果都访问一台电脑,不光是网络带宽问题,就这一台电脑早就累死掉了,这背后有很深层次的技术问题。
2,服务器的分类
按处理器架构分类:X86架构服务器,RISC架构服务器,EPIC架构服务器(IA-64)
按功能应用分类: 域控制服务器(Domain Server),文件服务器(File Server)印服务器
(Print Server),数据库服务器(Databa Server),邮件服务器(E-mail Server),Web服务器(Web Server),多媒体服务器(MultimediaServer),通讯服务器(Communication Server),终端服务器(Terminal Server),基础架构服务器(Infrastructure Server),虚拟化服务器(Virtualization Server)
目前的技术来说,这些功能划分为逻辑形态。从可以把多个功能把多个功能部署在一台服务器上面。从物理形态上来说,可以是一台服务器完成多个功能。
这里我们重点说两种服务器,一种是文件服务器,一种是数据库服务器,直观一些的你可以把百度网盘理解为文件服务器,虽然背后其实更加的综合,但是这种专门用来做文件存储的电脑就可以称为文件服务器了。
数据库的操作、数据表现形式
跟另外两种服务器一样,数据库服务器也是专门只干一件事情,就是存储数据,数据库服务器一般不对外,它再为网站服务器或者其他的程序来提供服务,而且它会安装专门的数据库管理软件,来进行数据管理,这些数据的组织形式有点像excel表格里面的数据,其他电脑对他进行操作的时候,就好像跟他吼一声:
“hey,帮我查查那个谁的什么什么信息。”,数据库服务器的软件就会把需要的数据给它返回回去。
用户、web服务器、数据库服务器
所以当你访问百度搜素某个关键词的时候,首先你访问到的是百度的某台网站服务器,网站服务器只是负责请求的处理跟结果的反馈,具体的数据它得更数据库服务器要去,数据库服务器把数据反馈给网站服务器,网站服务器再把结果组织输出成为你看到的模样。
服务器按外观分类:
3,服务器关键组件及技术
在这里简单介绍两个组件
CPU:中央处理器(CPU,Central Processing Unit)是是一台计算机的运算核心和控制核心。
计算机的性能在很大程度上由CPU的性能决定,而CPU的性能主要体现在其运行程序的速
度上。影响运行速度的性能指标包括CPU的工作频率、Cache容量、指令系统和逻辑结构等参数。
主频:主频也叫时钟频率,单位是兆赫(MHz)或千兆赫(GHz),用来表示CPU的运算、处理数据的速度。通常,主频越高,CPU处理数据的速度就越快
缓存(Cache):实际工作时,CPU往往需要重复读取同样的数据块,而缓存容量的增大,可以大幅度提升CPU内部读取数据的命中率,而不用再到内存或者硬盘上寻找,以此提高系统性能。但是由于CPU芯片面积和成本的因素来考虑,缓存都很小
核心数:般情况下每个核心都有一个线程,几核心就有几线程,但是intel发明了超线程技术,可以让单核模拟多核心工作,intel的超线程可以让单核心具有两个线程,双核四线程
线程数 :线程数多当然速度就快,但功耗就大
在服务器应用场景下, 常常会在一台服务器上搭载两个甚至多达几十个物理CPU,各个处理器之间通过高效互联互通,提升计算力。在服务器处理器缓存方面,一般提供了三级缓存。以笔者之前测过的Intel Xeon Glod 6140 CPU(2.30GHz、18 Cores) 处理器为例,
L2缓存为18*1024KB,L3缓存为25344KB(L表示缓存级别L2和L3的大小也是特定系列中CPU型号的主要区别之一)。
硬盘:
SATA:Serial ATA接口,即串行ATA,采用串行技术以获得更高的传输速度及可靠性。目前是第二代即SATAII
SCSI:全称为“SmallComputer System Interface”(小型计算机系统接口),具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优点,主要应用于中、高端服务器和高档工作站
SAS:Serial Attached SCSI接口,即串行SCSI, 采用串行技术以获得更高的传输速度。目前仍然是第一代
SSD:固态存储硬盘(Solid State Disk)其特别之处在于没有机械结构,以区块写入和抹除的方式作读写的功能,与目前的传统硬盘相较,具有低耗电、耐震、稳定性高、耐低温等优点。
服务器硬盘接口有哪些种类
一、风光依旧的SATA接口
SATA接口又被称之为“串行接口”,所以现在采用SATA接口的硬盘都被习惯的叫做串口硬盘。它是继IDE硬盘之后的一次演变。SATA的物理设计是以光纤通道作为蓝本,所以采用了四芯的数据线。SATA接口发展至今主要有3种规格,其中目前普遍使用的是SATA-2规格,传输速度可达3GB/秒,如图1所示为某品牌固态硬盘采用的SATA-2接口规格。
现在已经有SATA-3接口出现,如图所示即为西部数据的一款SATA-3接口的服务器硬盘。SATA-3接口除了将传输速率提高到了6GB/秒之外,还对诸多数据类型提供了读取优化设置。当然对于用户来说,SATA-3接口的出现并不意味着现有的SATA-2产品会被淘汰,因为SATA-3虽然采用了全新INCITS ATA8-ACS标准,但依然可以兼容旧有的SATA设备。
由于SATA接口的服务器硬盘,技术相当成熟而且构造成本不高,因此相对于其他接口类型的产品来说,其市场价位是比较平民化的。相信对于预算不高的企业用户来说,在原来的服务器架构中升级同样接口但容量更大的SATA-2接口硬盘,是最好的选择了。
二、应用更普及的SCSI接口
SCSI接口的服务器硬盘是现在多数服务器中采用的一种,它具有数据吞吐量大、CPU占有率极低的特点:用于连接SCSI接口硬盘的SCSI控制器上有一个相当于CPU功能的控制芯片,能够替代CPU处理大部分工作;现在普遍采用的Ultra 320标准的SCSI接口硬盘,数据传输率可达320MB/秒。SCSI接口服务器硬盘及SCSI控制器如图所示。
另外,SCSI硬盘具有的支持热拔插技术的SCA2接口,也非常适合部署在现在的工作组和部门级服务器中。SCSI硬盘必须通过SCSI接口才能使用,现在服务器主板一般都集成了SCSI接口,也可以安装专门的SCSI接口卡来连接更多个SCSI设备,所以其横向扩展能力是比较强的。
那么,SCSI接口的服务器硬盘,主要强于哪些方面,又适用于怎样的企业环境中呢?首先,SCSI对磁盘冗余阵列(RAID)的良好支持,可以满足有大数据存储的企业环境,同时数据安全性也有保障;再者,SCSI硬盘的转速早已高达15000rpm,这让企业数据中心的处理性能得到了保障;再次,其较低的CPU占用率以及多任务的并行处理特性,都可为成长型企业环境提供较强力的数据处理及存储支持。最后,从如图6所示现在的市场价格对
比来看,SCSI接口硬盘整体上要低于SAS接口硬盘,但明显高于SATA接口硬盘,所以,其更适合装配在对数据存储有一定的安全需求、容量需求、高处理性能需求的企业环境中。