10张图告诉你:服务器的内部结构到底有多妙(服务器结构图讲解)

网友投稿 1053 2022-09-19


10张图告诉你:服务器的内部结构到底有多妙(服务器结构图讲解)

原本今儿还是想写路由器的,和一些粉丝小友聊天时被他们抗议了一下,改成了今天的这篇文章。

身为网络工程师,天天折腾网络那些事儿,少不了要面对服务器这个东西。

对小白来说,可能会有一个疑问:服务器和电脑到底有啥区别啊?

其实,简单来说服务器也是电脑——是为电脑提供服务的电脑。

一台电脑,如果它被需要用来做某些专属用途,就需要安装一些比较特殊的软件,这个时候,这台电脑就可以叫它xx服务器。

这个xx,具体看它被用作什么用途了,用啥就起啥名儿。比如最常见的网站服务器。

但你想登录百度时,你在浏览器里输入电源

电源相当于人体的心脏,需保障电力供应,如果要买服务器,应选择质量好一点的电源。

另外需要注意的是,在实际使用场景中,如果只是配置一个服务器负责核心业务,那么最好使用双电源,并且分别接不同的机房线路;

如果服务器是集群中的一台(若干机器做一件事),则可以不用双电源。除此之外,运维工作中就不用再过多考虑电源的其他问题了。

02 CPU处理器

CPU 处理器相当于人体的大脑,负责整个服务器的运算和控制,是影响其性能效率的最核心部件。

常见的 CPU 种类有如下 2 种:

精简指令集的 CPU:设计代表有 SUN 公司的 SPARC 系列和 ARM 系列等,这类 CPU 的设计特点是指令集精简,每个指令执行的时间很短,操作很简单、效率较高。复杂指令集的 CPU:设计代表有大家熟知的 Intel 至强系列(XEON)和 AMD 系列(应用不多)等,这类 CPU 的设计特点是指令数量多,指令集复杂,且执行的时间较长,但能处理的事务更多、更丰富。

CPU 一般通过频率(GHz)表示性能的好坏,CPU 频率就是用来表示 CPU 每秒钟的工作次数,即频率越高速度越快。

需要注意的是,每一台服务器中不是只能包含一个 CPU,而是可以容纳多个。服务器 CPU 的颗数,我们称为路数。

企业级常见的物理服务器配置包括如下两种:

(1)一般企业里的服务器

CPU 个(颗)数为 2~4 颗,单个(颗)CPU 是四核。内存总量一般是 16~256GB(32GB、64GB 比较常见)。

(2)用于虚拟化的宿主机(例如,应用 VMware(虚拟化软件)、KVM 的主机)

CPU 颗数可达 4~8 颗,内存总量一般是 48~128GB,常规企业可以同时启动 6~10 个虚拟机甚至更多,主要是根据业务需求决定虚拟机的配置大小。

在企业级系统中,选择 CPU 硬件配置,以及监测和优化服务器系统的 CPU 性能,是一项复杂且需要长期实践和反复观察的工作。

另外值得一提的是,CPU 长时间运行会发热,因此需要配置降温的设备,即 CPU 风扇或散热片,其中散热片主要是用金属铜或者铝制作的,作用是将热量快速传导出去。

03 内存(RAM)

内存是 CPU 和硬盘之间的缓冲设备(如图 5 所示),是临时存储器(用于存放数据),这就意味着,如果突然断电,那么位于内存中的数据很可能会丢失。

程序运行的时候,一般会被调度到内存中执行,服务器关闭或程序关闭之后,数据将自动从内存中释放掉。

提到内存,很多企业在面试时,都会问缓冲区和缓存区的区别,作为新手,可以这样回答:

(1)缓冲区

将数据写入内存,这个数据的内存空间在 Linux 系统里一般称为缓冲区(buffer)。例如,写入到内存缓冲区,即写缓冲。为了提高写操作性能,数据在写入最终介质或下一层级介质之前会合并放入缓冲区中,这样会增加数据持久写的延时。因为第一次写入缓冲区后,再向下写入数据之前,还要等待后续的写入,以便凑够数据或者定时写入到永久存储介质中。

(2)缓存区

从内存中读取数据,这个存数据的内存空间在 Linux 系统里一般称为缓存区(cache)。例如,从内存缓存区读取,即读缓存。操作系统利用缓存提高文件系统的读性能和内存的分配性能,应用程序使用缓存也是为了提高读访问效率。

将经常访问的操作结果保存在缓存中可备随时使用,而非总是执行读硬盘以获取数据等开销较高的操作。

记住这样一句话:

缓存无处不在,无论是电脑硬件、操作系统,还是企业网站集群及其他业务系统。

04 硬盘(磁盘)

硬盘就是永久存放数据的存储器,如今常用的硬盘都是 3.5 英寸的,且生产的单块硬盘的容量越来越大,体积却越来越小,速度也越来越快,其中常见的硬盘有300GB、600GB、1TB、3TB、4TB等规格。

注意,对于工业级(企业级)硬盘计算,以 1000 为单位进行换算,即1TB=1000GB。

根据实际场景的需要,硬盘的接口有 IDE、SCSI、SAS、SATA 等几类(其中 IDE、SCSI 已退出历史舞台),硬盘的类型也分为机械硬盘和SSD(固态硬盘)两种。

从性能和价格的角度,可以对现有几类硬盘进行排序(从高到低),依次是 SAS接口固态硬盘 > SATA固态硬盘 > SAS机械硬盘 > SATA机械硬盘。

如图所示,即从存储容量和 I/O 读取速度的角度,对服务器中各个硬件做了比较。

可以看到,硬盘 I/O(读取)性能相比内存差很多,目前解决这个问题的普遍方法是先将大量的数据从硬盘缓存到内存,也就是说写入到缓冲区中,这也是当今互联网网站解决访问速度慢的必备方案。

05 Raid卡(阵列卡)

Raid 称为磁盘冗余阵列,其功能是:

当企业的网站(业务)数据量很大,单块盘装不下的时候,若购买多块硬盘存放数据,就需要利用 Raid 技术将所有硬盘整合成一个大硬盘,然后才能在这个大硬盘上分区(划分隔断、虚拟硬盘)存放数据。

但是,硬盘多了势必会有损坏,可数据是不能丢的。

针对这种情况,Raid 还具备一个功能,就是多块硬盘放置在一起可以配置冗余(备份),由此可以确保即使若干硬盘有损坏,数据也不会丢失。

总的来说,使用 Raid 卡(阵列卡)具有以下好处:

可以将所有硬盘整合到一起(扩充容量);可以使得数据更加安全(数据冗余);可以获得更高的效率(读写性能)。

如果有 Raid 卡,则一般会将硬盘连接到 Raid 卡上,而不是直接插到主板上,Raid 卡最终将插到主板对应的插槽里。

不过,在企业真正的重要服务器里,Raid 几乎是不被采用的,请读者注意这点。

06 远程管理卡

远程管理卡是服务器特有的远程管理部件,在家用电脑及笔记本电脑上是不存在的。

它的作用是通过网络远程(异地)开关服务器,并可以查看服务器开关的过程等信息。

不仅如此,远程管理卡还可以细分为服务器自带远程管理卡和独立远程管理卡。

服务器自带的远程管理卡,可以关机、开机,但是看不到开关服务器的过程,因此建议为服务器配备独立的远程管理卡,成本上可能会多花人民币 100 元左右。

但是好处是很明显的,当服务器出现问题时,可以利用管理卡快速查看服务器故障及恢复服务。

07 主板

主板实际上就是一块电路板,相当于人体的骨架,CPU、内存、硬盘、Raid 卡等所有硬件设备最终都要连接在主板上,才能正常工作。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:收藏!2022网络工程师必看技术名词合集(网络工程师专业术语)
下一篇:Java多线程 Guarded Suspension设计模式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~