web服务器性能评估,实战WEB服务器性能升级 (一)

在专区的前几篇文章里,我们谈到了一些影响性能(特别是网站服务器)的因素,现在我们知道,通过升级底层的硬件结构和改病善上层应用环境,可以带来更佳的网站服务性能。下面我们就以一个现实的网站服务器升级案例来说明服务器构建的诸多考虑因素。这一切问题的焦点在于,网站的源动力何在?这个问题将在本文中得到回答,同时,你还可以从中获取更多的有关信息,从服务器端的角度逐步探知WEB站点的技术内幕。

新服务器

首先让我们介绍一下该网站新启用的这台服务器,同时,将这台新服务器与上一台旧机器作个比较。简单来说,这一新系统由一个配置有2GB Crucial ECC PC133 SDRAM 内存的Sun Blade 100平台和一个IBM UltraStar 36LP硬盘构成。Blade 100平台是一台依托于UltraSPARC IIe处理器的入门级64位工作站。该系统集成了图像处理以及声音处理子系统,搭配了3条32-bit/33 MHz的PCI插槽和4个168-pin SDRAM DIMM接口。当然,由于该系统安装在机架上运行时无需外接显示器和音箱,所以集成的显卡和声卡对管理员来说,并不是很重要。

处理器

在普通的PC电脑上集成显卡和声卡是常见的事情。相比PC电脑来说,这块UltraSPARC IIe处理器能够支持更多的集成硬件,包括位居处理器核心的一个64-bit SDRAM内存接口和一个64-bit/66 MHz PCI接口,这在PC电脑上并不多见。除了内存控制器外,处理器内还集成了256 KB的L2 cache。

UltraSPARC IIe处理器工作在500MHZ主频时,能耗的峰值只有13W。这大大降低了芯片对散热冷却的需求,同时,由于能耗很低,即使数据中心的散热或环境设备发生故障,它对服务器稳定性构成的潜在威胁也能降到最低程度。

对服务器的要求

让我们回过头来再说说这台新服务器。网站决策者在对购买服务器的各种选择方案作评估之前,就已经对即将要购买的服务器提出了若干要求。本文将把这些要求逐一进行粗略描述,然后再与各位探讨网站目前的这一新服务器是如何满足这些要求的。在开始之前,我将向各位交代一下那台旧服务器的情况,把它作为一个对比的例子,这样有助于加深对新服务器的认识。为了更好地将新旧两款服务器进行比较,我还要简要地介绍一下对比环境的负载条件。

目前,大量PC个人电脑的主频均已达到了2 GHz级别。对比这个数字,你也许会对那台只有一颗125 MHz的“芯”及400 MB/s总线的旧服务器嗤之以鼻,认为它根本不配成为一台服务器。事实上,即便是这台拥有一颗500 MHz CPU的新服务器,比之2 GHz这一数字也是相距甚远。主频数值上的比较轻而易举,但是为了能真实地测算一台服务器所能实现的性能级别以及它能支持的用户数量,你不得不根据应用程序的运行情况以及负载在系统组件中的分布方式对机器进行评估。

大多数情况下,在评估一台服务器时需要谨记一个衡量的尺度,那就是服务器支持的并发用户数量。系统上的每一用户均会消耗一定数量的内存、CPU时间、空间及网络带宽等等。因此,由单个用户的应用负载叠加而成的并发用户数量就构成了服务器的总占用率。在web服务器条件下,所谓的“用户”指的是浏览网站的人,而负载则应该用请求的数量来衡量。

那么,在这个网站上,如果要对用户提交的单个典型页面访问请求提供服务,需要满足什么条件呢?

1、 一个web应用服务器线程

(1)CPU执行时间

(2)存放线程(thread)和数据(data)的内存空间

2、一个数据库连接或会话

(1)CPU的执行时间

(2)存放连接(connection)、查询(query)和结果(result)的内存空间

(3)I/O:读取查询或写入查询的磁盘吞吐量

3、网络连接

(1)HTTP请求带宽

(2)HTTP响应带宽

正如你所看到的,若只有一个快速的CPU或一个高带宽的网络链接,那是远不足够的。如果服务器面对的最大并发请求数量超出了其内存空间所能支持的范围,那么,内存的容量就会成为系统的瓶颈,使系统的处理能力不能被充分利用。如果网络带宽不足够,那么它对服务器能够支持的用户数量也会带来影响。

下面,我很快将会与你更为详细地探讨应用负载。现在,让我们把视线转移到服务器硬件。先让我们对升级前后的硬件系统迅速作一个全面的纵览。

网站一直都是通过一个比网站自身古老得多的系统来提供服务的。1994年,SPARCstation 20系统作为一款基于32-bit SuperSPARC缓冲器(Mbu)模组的高端多处理器工作站正式面世。该系统共支持2个存储缓冲器模组,每一模块最多支持2个CPU。也就是说,该系统共能支持4个CPU。网站所用的SPARCstation 20系统正好配置了4个CPU。该系统还有4个Sbus扩展槽和8个内存插槽(支持200-pin EDO DIMM内存)。该内存接口为64位,工作在50 MHz下。下表对Ace's Hardware网站旧的SPARCstation 20系统与新的Blade 100系统对应的规格作了一个比较:

系统 SPARCstation 20 Sun Blade 100

CPU 4 个 125 MHz HyperSPARC处理器 1 个 500 MHz UltraSPARC IIe处理器

ISA 32-bit V8 SPARC 64-bit V9 SPARC

L1 Cache 8 KB Inst 16 KB Inst, 16 KB Data

L2 Cache 256 KB 256 KB

物理内存 8 条64 MB内存 (共512 MB) 4 条 512 MB内存 (共2 GB)

内存接口 工作在50 MHz下的64-bit EDO 工作在84 MHz下的64-bit SDRAM

扩展槽 4 个Sbus槽 3 个32-bit/33 MHz PCI槽

正如你所见,这两个平台就硬件来讲具有很大的区别。虽然Blade 100属于一个比较低端的系统,只安装了一个单CPU,同时,只有3个PCI扩展槽位和3个内存插槽,但是,相对SPARCstation 20系统而言,它采用了更多的先进技术。尽管Blade 100系统的内存模组数量只是SPARCstation 20系统的一半,但其支持的内存容量却是后者的4倍。另外,Blade 100系统的内存接口还支持更高的带宽以及更短的响应时间。

就CPU方面来讲,Blade 100所用的500 MHz的UltraSPARC IIe处理器在单线程性能上比SPARCstation 20的125 MHz 的HyperSPARC处理器快了数倍。即使与4个HyperSPARC处理器的综合性能相比,UltraSPARC IIe处理器的表现仍要高出许多。这一新式的CPU还有一个优点,那就是它的低能耗。尤其是在与4个巨大的HyperSPARC处理器(采用了0.4微米的制程)进行比较的情况下,这一优点更加突出。

最后需要指出的是,Blade 100系统的磁盘接口得到了大大的改进和完善,用40 MB/s UltraSCSI接口取代了老式的10 MB/s FastSCSI接口。附连在这个接口上的是一个IBM UltraStar 36LP硬盘,其存储容量是旧服务器硬盘组(2块硬盘,容量分别是2GB和4 GB)容量的6倍。

值得重视的是,在新旧两台服务器的比较中,虽然旧服务器看上去已经显得非常落伍(尽管实际上确实如此),但是自1999年6月安装运行以来,它的表现一直令人满意站点的运行格外良好,直到其面临的请求数量不断上升,并超出了系统的内存容量极限,情况才发生改变。实际上,在这一基于的新站点的研发过程中,网站决策者曾把这款新的web应用锁定运行在125 MHz的 HyperSPARC处理器上。除了编译时间略嫌冗长之外,web应用的代码在这几个低速的处理器上运行得极其流畅。毋庸置疑,那些与web应用相关的沉重的事务处理负载并不常常需要强劲的CPU运算能力。

在可靠性方面,旧服务器只发生了一次硬件故障(这一故障是去年夏天,系统在提供服务的过程中出现的),那就是内存出现了问题。 当时,数据中心内出现一个A/C运转中断,紧接着,系统开始变得过热,导致了问题的出现。内存发生故障又引起数以千计的“软”错误,由于内存带有ECC纠错功能,所以错误都被记录并修正了。

迄今为止,新服务器性能表现之优令人印象深刻,超出了网站管理员的预料之外。他们坚信,这个新系统将和旧的SPARCstation 20系统一样稳定、可靠。

接下来,我们将对服务器的存储容量展开讨论。

服务器的存储容量

这台旧服务器SPARCstation 20最大的局限在于存储容量。由于搭配了4个处理器和512 MB内存,它实际上已运行在其最高的配置规格下了。当年系统安装启用之时,此配置可算是极其豪华,但是随着网站的知名度和访问量不断上升,服务器已逐渐步履蹒跚,不堪重负。需特别指出的是,不管是使用运行在Apache 和PHP环境下的旧应用还是运行基于JAVA的新应用,该系统都会受到系统物理内存容量的限制。

在这款旧平台上,Apache和PHP搭配得不是很好,当系统对巨大的负载作出响应时,经常会耗尽系统的所有内存。也就是说,当人们最需要该服务器时,它却不幸地当机了。而在新服务器中,和Resin配合起来,就显得稳定多了,但是却需要容量高出许多的常驻内存。尽管每个Apache进程一般只消耗几兆字节的内存,但是新的web服务器程序和应用却需要用到200兆字节的内存空间(这个数字并不包括编译器占用的内存大小)。

由于网站仅数据库就占用了数量惊人的内存空间,因此,如果系统内存均被限制在512MB,那么,两种软件平台都不能真正地顺利运行。对此,我们可以作出两种选择:一是扩展硬件,二是更换新的硬件。如果选择扩展硬件,那么就需要再添置一台新机器,一台机器跑web应用,一台跑数据库。这样的话,就可以通过把数据库迁移到另一台机器上,将SPARCstation 20服务器50%的内存释放出来,全部供web应用单独使用。

但是,这种选择有几个缺点。首先,第二台机器的加入将会使得服务器的设置更加复杂。尽管额

【责编:admin】

--------------------next---------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值