# make install
3.测试Web服务器的吞吐量和每秒最大请求响应数
全部编译完成之后的apache就可以支持ssl,但是要想进行WebBench的测试,还需要配置/apache/conf/http.conf文件,最关键的是要打开ssl的监听端口443,并且把documentroot和Webbench3.0所在的目录对应起来。然后在/apache*/bin/下运行apachectl startssl执行电子商务子集测试,运行 apachectl start执行普通的测试,通过控制台和客户端WebBench软件的配合就可以测试出当前系统配置下Web服务器的吞吐量和每秒最大请求响应数。
三、WEB服务器测试结果分析
1.SMP技术与服务器集群技术
SMP(Symmetric MultiProcessing),即:对称多处理。指在一个计算机上汇集了一组处理器(多CPU)。它们共享内存及总线结构,系统将处理任务队列对称地分布于多个CPU上,从而极大地提高了系统的数据处理能力。Windows2000采用了SMP,一般情况下,双CPU的服务器比单CPU服务器性能提高70%左右。而linux系统对于SMP技术并不敏感,根据测试结果显示,使用双PentiumIII800CPU比单CPU的Web服务器性能没有显著的提高。
与SMP相比,集群技术更易于实现,它开发周期短,而且造价低。虽然节点之间数据传输的速度比SMP总线低,但是它的可扩展性远远超过了 SMP,在一个集群中可以很轻松地支持256个CPU。同时,由于各节点之间使用了松散耦合的方式连接,可以在系统正在运行的情况下方便地更换或添加节点,因此它的可靠性与可扩展性也优于目前的SMP技术,但是同时我们应该注意到的是集群技术的主要局限在网络的瓶颈上,对于关键的节点甚至使用千兆网,这是一般用户无法承受的。因此在选择上应该考虑到这个问题。
2.系统内存的影响
在linux系统下,有一点需要注意:对于某些BIOS来说,如果超过64MB内存就需要在LILO.CONF中加入扩展内存的命令,否则服务器内存显示只有64MB。我们对64MB内存和128MB内存的服务器进行测试,结果表明 :内存对Web性能的影响是巨大的,尤其是在大负载下的性能提高得很快。
笔者认为,对于部门级服务器而言,由于CPU速度、网络带宽、磁盘性能的限制,512MB-1G内存是比较适宜的。
3.64位操作系统与64位服务器
对于linux界来说Tru64 Linux系统的推出是一件大事。我们分别在天兆阳光的Alpha、杜文的SparcII的服务器上作了RedHat6.2的Web性能测试。但是测试结果并非像想象中的那样令人满意。笔者分析有以下几个原因:首先,不合时宜的测试集。我们所使用的测试工具WebBench还没有64位Linux的测试集,没有充分考虑到64位的高带宽、海量存储等优势。第二,Tru64 Linux系统与64位硬件系统的配合还存在一定的问题,它毕竟不象Solaris是SUN定制开发的支持64位运算的操作系统。
4.Apache 服务器的优化
Apache服务器系统的优势之一就是可以对其进行优化。笔者认为主要分为应用级和代码级两种优化方式。应用级优化比较简单,主要是对HTTPD.conf、ACCESS.conf、SRM.conf三个配置文件中的参数进行配置。本次测试中没有对系统作优化,只是针对64位服务器系统性能好的特点,将最大进程数从默认的150提高到了1000,减少了CPU杀掉进程的时间,测试后发现Web性能提高了10%。而对于代码级的优化相对复杂得多,并且可以参考的实例不多,希望在以后的测试中进一步体会。
总之,linux操作系统应用于Web服务器有许多优势,如:服务器大负载稳定性好等,相信许多Web用户都有很深的体会。
WebBench介绍
WebBench是一个主要用来考查Web服务器性能的测试工具。它的测试结构与ServerBench相同,同样采用服务器、客户端和控制台三种方式。 WebBench 在Web服务器端安装测试文件,这些文件主要由HTML、GIF和可执行文件组成,利用客户端计算机来模拟Web浏览器向Web服务器发送请求。但是,在客户端并不使用真正的浏览器,也不真正显示服务器发送的响应文件,而是在收到Web服务器的响应后立即纪录该响应的相关信息,并立即发送另外一个请求。通过这种方法来测试Web服务器每秒处理的请求数和数据吞吐量。WebBench测试可以分为普通测试和电子商务测试:普通的测试集由静态和动态请求组成;而电子商务测试集由8%的安全请求和92%的非安全请求组成。在电子商务测试中,Web服务器需要支持SSL(Secure Socket Layer)协议,它是Web服务器上使用广泛的基本安全措施,可向基于TCP/IP协议的Client/Server应用程序提供Client/Server端的鉴别、数据完整性和信息机密性等安全措施。
ServerBench介绍
ServerBench是一个著名应用服务器性能测试工具,它主要在Client/Server环境下测试应用服务器的处理器性能、网络性能和系统性能。其中,应用服务器系统的综合性能测试(sys)是ServerBench最基准的测试。这次测试我们也主要测试了综合性能(sys)和处理器性能(proc)两项。
ServerBench的工作原理就是在服务器端启动一个主进程,将主进程与控制台相连。对于每一个和服务器相连的客户端,该主进程都创建一个服务进程,服务进程负责等待客户端的请求并作相应的处理,主进程和服务进程通过共享内存来交换数据。控制台用来定义测试集,用这个测试工具,客户把各种事务处理发送到服务器,每个事务都需要应用服务器执行磁盘的读写、数据操作和Client/Server之间的网络通信等一系列操作,来给服务器的不同子系统增加压力,并以每秒完成的事务处理量得出测试分数。
文章来源于领测软件测试网 https://www.ltesting.net/