在当今时代,说互联网支撑起了整个世界的半边天毫不过分。无论金融、工业,还是机关、社会,各行各业都被互联网串联起来。那么你对支撑起互联网的服务器有了解吗?服务器的构架又是怎样的呢?

 

服务器可不是你的电脑主机

要了解服务器构架,首先要先知道服务器是什么。在不少人眼中,服务器无非就是一个大机箱,和 PC 主机没什么区别。

 

  

事实上,这种观点只是说对了一半。服务器与 pc 主机在结构上确实有很多相似之处,都包括了中央处理器、内存、芯片组、I/O 总线、I/O 设备、电源、机箱和相关软件等。但从本质上来讲,服务器有固定的地址,可以为互联网用户提供服务节点,实现互联网资源共享,并具备承担和保障服务的能力。

  

而且,由于用户数量的不同,服务器与电脑主机还有很多的区别。PC 主机一般只针对个人,提供给单个用户计算等服务。而服务器作为网络的节点,需要为多用户、多任务提供可靠的服务。服务器存储并且处理了互联网 80%的数据和信息,是网络的中枢和信息化的核心所在。

  

而从要求方面来看,服务器需要为很多共享服务(如数据库、web 应用、网络等)提供高性能服务,这就要求其必须具备高速计算能力、长时间运行的稳定性和强大的外部数据处理吞吐能力。与 PC 在处理能力、安全性、可扩展性、可管理性、稳定性等多方面性能有着本质差异。

  

也正是因为这些不同,服务器在安全和稳定方面的要求也变更高,应对突发事故能力更强。当遭遇停机、断网、断电、网络攻击时,PC 机往往会产生数据丢失等后果,而这是服务器所不能允许的事件。服务器面对的是整个网络大量的用户,需要保障 7×24 小时的稳定不间断的工作。

  

为了保障服务器的安全,其采用了大量技术也是 PC 机所不具备的。这其中,冗余技术、系统备份、故障预警技术、内存纠错技术、在线诊断技术、远程诊断技术以及热插拔技术等,由于这些技术的存,大多数情况的系统故障可以在不关闭服务去的条件下得到解决修复,这也增加了服务器的可管理性和风险应对能力。

 

  

 

采用对称多处理器技术的服务器

那么如何才能保障服务器的稳定工作呢?我们都知道,服务器和 pc 机的核心组件叫做中央处理器,即 CPU(Central Processing Unit)。而一般的 PC 机内部只有一个 CPU,这足以运转单个用户正常的处理要求。而服务器则往往采用对称多处理技术(Symmetrical Multi-Processing,SMP 技术)。

  

采用了 SMP 技术的服务器可以安装插入多个 CPU,提高处理能力。但是相对的,这样的处理器可扩展性则会较差。一般国产的小型服务器以 2 路、4 路、8 路为主,即内部装有 2/4/8 个 CPU。而 16 路和 32 路服务器近年来也开始变得常见,UNIX 服务器,也就是我们所说的小型机,可支持多达 64 个 CPU,而且近年来已经开发到了恐怖的 128 路服务器。

  

而且,服务器的 CPU 与普通 PC 机不同,其稳定性、缓存能力、接口、指令集、多路支持能力以及价位都有着明显的差异。而相应的,作为网络节点,服务器的内存在容量、性能、技术等更多方面有着根本的不同。

  

 

x86:武林盟主

服务器架构该怎么分

现在的服务器多种多样,而关于服务器分类的办法也各有不同。

  

最贴近用户分类办法为按照服务器档次划分,这也是目前最普遍的一种分类方法。这种分类主要根据服务器在网络中的层次或者档次进行划分。而所谓的档次并非是指服务器 CPU 主频的高低,而是以服务器的综合性能为依据,尤其是服务器的专用技术不同而进行的划分。

  

以这种分类方法来看,服务可以被分为:入门级服务器、工作组服务器、部门级服务器、企业级服务器和视频服务器。

  

但是这种分类无法帮助大家认清服务器本质,而且分类太多,特点不够明确。而另一种分类方法是以服务器的 CPU 设计模式,即其指令集类型来对服务器分类。这样的话可以将服务器分为两类:

 

  

CISC 和 RISC 的区别

一类是 CISC(Complex Instruction Set Computer 复杂指令集)架构服务器,也叫作 IA(Intel Architecture,Intel 架构)架构服务器,即通常所用的 PC 服务器。这类服务器基于 PC 机体结构,采用英特尔或者与之兼容的其他处理器芯片,这一架构以小巧稳为特点。

  

另一种则是 RISC(Reduced Instruction Set Computing 精简指令集)架构服务器。这类服务所采用的 CPU 与日常所用 CPU 完全不同,使用 RISC 芯片并且一般会采用 UNIX 操作系统。此类服务器价格昂贵,但性能和数据处理能力强大。

  

而还有种分类则比较极端了,这种分类是以市场情况来进行划分,将服务器分为 x86 服务器和非 x86 服务器。这种分类方法事实上是对上一种分类方法的补充和改进,CISC 服务器目前以 x86 为其代表,但 RISC 服务器却并不是服务器市场剩余的全部,一些新兴的 CPU 设计模式正在崛起并抢占市场。但是由于 x86 服务器所在份额巨大,达到服务器市场的九成左右,因此采用这种分类也更为合适。

  

x86:帝国崛起

提到芯片巨头英特尔,每一个互联网用户应该都不会感到陌生,英特尔的 CPU 制造技术冠绝全球,但是你知道这家巨头企业是如何发家的么?

  

事情要从 1978 年 6 月 8 日说起,Intel 发布了一款新型的微处理器“8086”。而这款处理器在新出现时并没有得到什么关注,可是他却创造了一个新的时代。8086 意味着 x86 架构的诞生,而 x86 作为特定微处理器执行计算机语言的指令集,定义了芯片的基本使用规则。8086 也直接带动了 Intel 成为全球首屈一指的芯片巨头。

  

而 x86 不仅仅使 Intel 平步青云,也成为了业界的一种标准。在过去的几十年里,无论是笔记本、服务器、超级计算机还是编写设备,都可以看到 x86 的身影。而且,x86 架构还在通过不同的方法进行改进,无论 AMD、VIA 都可以通过 X86 指令集的弹性来对付 Intel,迫使 x86 进行改变。

  

通过几十年的技术积累,x86 服务器在服务器领域的地位几乎是独孤求败。小巧灵活的 x86 服务器在市场上应用十分广泛,互联网以及局域网内的文件、打印、通讯、web、电子邮件、数据库以及应用服务等多个领域都可以一展身手。

  

x86:江湖纷争

x86 服务器最大的特色在于可以兼容 Windows 操作系统,全部都采用了 Intel 的 CPU。而 Intel 的 x86 服务器也可以分为两代,最初采用的 80x86 系列在发布了产品 80486 后,Intel 对该系列产品进行了重新命名并注册,这也就是现在 Intel 的 Pentium 系列,当然,这个系列在中国还有个更响亮的名字,即奔腾系列。

  

目前奔腾系列的 CPU 包括:Pentium、Pentium MMX、Pentium Pro、PII、PII Xeon(至强)、PIII、PIII Xeon、P4 Xeon、Celeron2(赛扬)等。

 

IBM ThinkServer 情归联想

  

x86 服务器的 CPU 由 Intel 一家独大,可服务器的竞争缺颇为激烈。2014 年初,联想以 23 亿美元并购了 IBM x86 服务器业务,一举成为服务器领域全球顶级的企业。可是即便联想得到了 IBM 的 x86 业务,整个 x86 市场依然混乱非常,惠普、戴尔、Oracle 以及壮士断腕的 IBM 依然实力强劲。回看国内,浪潮、曙光、华为等国内企业也把不同级别的服务器市场做的风生水起,服务器江湖一片混乱。

 

  

RISC:高手过招

x86:廉颇未老

x86 老么?从时间上来看,确实老了。x86 从 1978 年至今已经将近 40 年。可经过各种风云变幻之后,x86 依然是服务器行业绝对的领导者,说这样的一个服务器行业领袖已经老去,那无非便是在指摘支撑起整个互联网的服务器行业已老。

  

而且,经历了很多代的改进和变革,x86 架构服务器依然是最快的架构之一。而且现在 x86 也是整个行业的标杆,从技术上来看 x86 从未落后过,只不过是和其他架构的服务器相比差距大小是否被拉近了。

  

从指令集架构来看,CISC 确实是有些陈旧了。即便是 Intel 也已经承认,CISC 架构确实限制了 CPU 的发展。在 CISC 微处理器程序的各条指令相互串联执行,指令操作也需要串行执行,按照这种方式来进行任务执行,其控制当然十分简单,但计算机的整体利用率却被拖了后腿,执行速度相对偏慢。这也是 CISC 架构为中低档服务器所采用的原因之一。

  

复杂指令集是一种伴随着计算机诞生便存在的一种指令集。其拥有较强的处理高级语言的能力,对于提高计算机性能有一定好处。而日趋复杂的指令系统不仅带来的效率的低下,还致使系统结构的复杂性增加,这种复杂性也将导致了 CISC 的通用性不佳。

  

RISC:高手对决

事实上,CISC 的问题存在并非一两年了,在 1979 年,也将是 x86 诞生后的次年,美国的加州大学伯克利分校便发现了这一问题,而针对这些问题,一些人提出了精简指令的设想,也就是将指令系统中使用频率较高的少量指令提出,并提供一些必要的指令来支持系统操作和高级语言。而这个原则经过发展,于 1980 年 IBM 801 计划完成,精简指令集,也就是 RISC 正式面世。

  

  

RISC 要比 CISC 精简太多

RISC 与 CISC 出生的时间相差不多,但是技术上确实针对了 CISC 的弱点,可谓是高手过招,滴水不漏。而 RISC 的特点则是指令的格式全部一致,指令周期也一样,并采用了流水线技术。而与 CISC 小巧灵活的定位不同,RISC 在中高端市场的优势会更大。

  

也许有的人会有疑问,既然 RISC 在技术上要比 CISC 精简,那么为何现在称霸服务器市场的是 CISC 的代表 x86 而不是 RISC 呢?这是一个很矛盾的事情,事实上,采用精简的一系列指令来完成相同的任务要比采用单一的复杂指令会更慢。因为微处理器的设计者一般没有时间去调整每一条可能会用到的指令,因此他们只会优化那些常用的指令,而 RISC 的速度自然会慢一些。

  

而且在上世纪 80 年代,CISC 会使得程序变得更加紧凑,虽然操作复杂但是速度确实会更快。而 RISC 在输入指令完成简单程序时,需要从存储器中度日指令的次数会更多,因此需要的时间也更长,在当时的工业和设计领域都对 RISC 的前景产生过担忧。

  

但随后人们也开始认识到一些问题,微处理器的运行速度开始变得要比内存更快了,这也就意味着增加处理器的利用率会使得整个过程变得更快。而这种趋势正在随着时间变得越来越强,很明显,更多的缓存支持更高频率的操作正在变得越发有必要,而降低 CPU 原本的复杂度才可能节省出一定的空间,来留给新增的缓存。

  

RISC:争久必合

降低 CPU 复杂程度促进了 RISC 地位的提升,可是 Intel 是不会允许自己一手打造的 X86 就此没落的。而事实也是如此,我们今天 x86 依然是行业绝对的主角,那么他是如何做到以弱克强的呢?

  

准确来讲,现在的 x86 架构已经不是标准的 CISC 了,他吸收了 RISC 和 CISC 双方的性能的有点,形成了独特的、自主的 x86 架构。这种 X86 架构依然是 CISC 的骨和皮,却加入了很多 RISC 的特色技术,因此虽然在高端市场无法与 RISC 竞争,但是在占了市场主流的中低档 x86 架构仍然是最快的。

  

而且,RISC 和 CISC 之争在上世纪就已经见了分晓,Pentium 和 P6 时代二者几乎都走向了融合的方向。CISC 指令集发展为现在的 x86,而 RISC 指令集提醒结果则发展为现在的 ARM 和 MIPS 为代表的高性能 RISC 指令集。

 

  IBM 大型机便是采用 RISC 构架

  

RISC 指令位数较短,内部有快速处理指令的电路,使得指令的译码和数据处理等能力更强,执行效率更高,但这一切的前提都是需要编译程序的处理,也就是上世纪所困扰 RISC 的原因。而 CISC 指令译码较长,还需要机构微指令协助执行,但开发较为容易,可执行效率低,处理数据的速度慢,因此这项技术更多的被应用在中低档的服务器构架之中。

  

 

ARM:异军突起

RISC:战火点燃

RISC 和 CISC 握手言和,这并非服务器市场竞争结束,而是新一轮战火点燃的信号。双方短暂的和平还因为现在的处理器速度与指令集构架的关系越来越小,指令集构架的影响力早已被 CPU 微结构,甚至更为贴近底层的设计所超越。

  

而反观服务器市场,在中低档服务器全盘被 x86 所统治的情况下,高端服务器的竞争形势也很激烈。在高档服务器市场中,Compaq 的 Alpha、惠普的 PA-RISC、MIPS 公司的 MIPS、SUN 公司的 Sparc,以及 IBM 的 PowerPC。

  

在非 x86 服务器当中,蓝色巨人 IBM 在技术方面的领先使其无人能当。而这一领先优势也是让 IBM 可以大胆的放手将 x86 业务全盘卖给老合作伙伴联想的原因之一。无论是 IBM 的 Z 系列还是 P 系列,其稳定可靠性方便都得到了市场广泛的认可。

  

而 RISC 的前景已经不再像过去的年代一样模糊,各大公司也都意识到这一领域的重要性,开始竞相发力,IBM 的优势也不再像过去一样稳如泰山。

  

ARM:异军突起

在 PC 领域,Intel 的 CPU 一枝独秀。而在移动端呢?那就当属 ARM 了。ARM 全称为 Advanced RISC Machine,也就是进阶精简指令集机器。ARM 是 RISC 微处理器的代表作之一,其广泛的在嵌入式系统设计中被使用。而且 ARM 处理器最大的特点在于节能,这也是其在移动通信领域无人能敌的原因之一。

  

 

谷歌高通联手打造 ARM64 位服务器

  

在过去,ARM 专注于发展 32 位架构,在移动端称霸多年,让 Intel 眼馋不矣。而在 PC 和服务器领域,Intel 的市场也让 ARM 十分眼红。ARM 于 2011 年底发布的 ARMv8 为其首款 64 位处理器,而戴尔在 2013 年发布了其首款基于 ARM64 位构架的服务器,相应的服务器解决方案也被开发出来。

  

专家认为,尽管 Intel 的 x86 处理器在服务器领域依然无敌,但 64 位的 ARM 构架应该可以找到自己的一席之地,ARM 在内存和网络接口同计算核心间的距离会被尽可能的拉近,并借此承载起密度极高的大量计算进程,这种特性与 Web 服务器及其应用十分契合。

  

在服务器领域,Intel 的芯片也有很多水土不服的领域,比如内存容量、I/O 和处理性能不成比例时,ARM 处理器的表现会更加合格。ARM 处理器的 ISA 复杂程度要低很多,开发成本也要低,相应的,ARM 服务器厂商针对这些应用场景所开发的服务器也就拥有了打败 Intel 的前提条件。而从这些应用环境所切入服务器市场的 ARM 架构服务器其针对客户也正是 x86 的原有部分客户。

  

而 Intel 是不会轻易放手的,在服务器领域,其工艺对 ARM 保持领先,其处理器性能也远高于 ARM 处理器,可在功耗方面一直是 Intel 的一个心病。此外,Intel 也想进军移动端,要打败 ARM,在低功耗的服务器领域发力便是一个好的选择。采用了 14nm 工艺的 Xeon-D,其包括的 2 个 1.4G 的 Broadwell 内核和 GPU 的功耗才仅仅为 6W,在性能功耗比方便比 ARM 要高出不少。

  

在 2008 年,Intel 推出了 Atom 处理器,这款处理器是 Intel 史上体积最小,功耗最低的处理器,其开创出去便是之中弥补自己在移动计算领域先天不足的问题,而这一领域被 ARM 霸占多年,在技术和经验中 Intel 都不占优势,想要打败 ARM 又谈何容易?

  

 

ARM:虎口夺食

既然双方都对对方的领域虎视眈眈,那么 ARM 和 Intel 的大战绝对是不可避免的。那么想要进入 Intel 的服务器领域,ARM 就需要拿出来真本事了,以其 64 位元处理器作为基础的芯片设计,功耗低、成本低,具备构架弹性,以这些优势去硬碰 Intel 又能有几成胜算呢?

  

换个角度看,ARM 芯片架构具备一定的灵活性,可以实现很多企业的特性需求,比如缓存一致性以及容错和高可用性等,其软件的生态环境成熟度却不及 Intel,即便是有了更多的企业关注也未必就能有把握击败 Intel,那么又是什么支持这 ARM 来客场挑战 Intel 呢?

 

  

 

决战,无可避免

 

虚拟机的兴起,让 ARM 看到了反击的机会。ARM64 位元处理器的处理能力越来越强,而以云计算为代表,服务器的需求产生了新的变化,ARM 构架服务器作为云计算的支撑构架有了新的形势和优势。而且随着移动网络和互联网融合互通日趋明显,ARM 发展后台数据中心已经是大势所趋,所以与其说 ARM 虎口夺食倒更像是背水一战,无论是 ARM 还是 Intel,双方都没有任何退路可言。

 

新势力:风云变幻  

早在 2013 年,百度位于南京的云计算数据中心首度对外曝光,这也是全球首个 ARM 架构服务器端的规模应用。在此之后,ARM 架构用于云支持的案例便越来越多,相比节省能耗的 x86 芯片,ARM 处理器功耗还要更小,这对于动辄上千台服务器需求的云计算数据中心来讲,无论是成本还是能源消耗都有着不小幅度的节省。

  

而且 ARM 构架本身是开放的, ARM 本身也不生产芯片,以授权的商业方式与各种半导体芯片厂商联手,这种商业模式也对于 ARM 服务器的进一步发展提供了更强的生命力。如果有一天,ARM 服务器挑战 Intel x86 服务器成功,请千万不要惊讶。

  

MIPS:另一个搅局人

RISC 的代表作 ARM 已经展现出足够的强大去对抗 x86,而另外一个代表 MIPS 则展现了足够的潜力。

  

  

MIPS 体系

MIPS(Microprocessor without interlocked piped stages )架构是有潜力和 ARM 相抗衡的另一个种采取精简指令集(RISC)的处理器架构。该架构基于一种固定长度的定期编码指令集,采用了导入 / 存储(load/store)数据模型,具有从 32 位到 64 位的可扩展性。

  

MIPS 构架有科技公司 MIPS 公司在 1981 年开发出来,经过长时间的发展,其相应的软件开发工具和厂商支持较广的一种嵌入式架构。MIPS 包含有大量的寄存器、指令数和字符、可视的管道延时时隙,而这些特色也让 MIPS 的能耗低到可以和 ARM 相抗衡。

  

MIPS 的高性能缓存区及缓存管理方案具有很强的灵活性,增加了密集型数据处理、数据量、断言操作等功能,在嵌入式市场不断增长的计算需求里仍然可以保持领先。而且作为 MIPS 最初是面向高性能科学计算支持,所以在指令集设计的时候更注重速度和性能,而非功耗和面积。

  

此外,相比 ARM,MIPS 的兼容性会更强。MIPS 架构可完全向后兼容,也就是说 MIPS32 位架构可以在 MIPS64 位上无障碍运行。这一点也是 MIPS 可能打败 ARM 的杀手锏之一。

  

RISC-V:颠覆者

如果说 MPIS 威胁到了 ARM 的地位,那么 RISC-V 便是直接威胁到了 RISC 的存在。RISC-V 从 2010 年开始设计,花费了大约四年的时间才完成了 RISC-V 的开发过程。

  

  

颠覆者 RISC-V

 

值得注意的是,RISC-V 是一款完全开源的架构。这也就意味着 RISC-V 是一个现代化、完全没有专利问题、没有历史问题的全新指令集,并且以 BSD 许可证发布。相比之下,ARM 指令集架构的许可证可能高达千万美元。

  

RISC-V 的开发者认为,开源是这个时代不可逆转的潮流,RISC-V 不仅能让公司受益,也可以让大学和研究机构更好的研究全新的处理器技术和架构。这种新的商业模式不仅提高了企业的效率也降低了成本,从云计算、大数据到容器技术无一不是开源项目的受益者。

  

与 ARM 架构对比,RISC-V 在功耗、性能、面积等各种层次都不输给 ARM,甚至有些层面已经超越了 ARM,并且相比之下,其可扩展性更强、指令更丰富,提供免费的开源编译和仿真环境,目前唯一需要期待的便是 RISC-V 的相应生态进一步的建立和成熟,当相关的产品产生后资本流入并且进一步发展,那么 RISC-V 取代 RISC,指日可待。