【IT168 应用】服务器性能不能凭主观臆断。如果一台服务器要承担工作负载,并运行良好,IT工程师就需要使用清晰、客观的方式去衡量服务器的需求性能和测量性能。几乎在每一种情况下,基准都是用来测量和监测服务器性能的。本文将对服务器指标和基准测试做一个概述,并说明进行服务器性能测试的六大步骤。
了解服务器测量标准和基准测试
服务器测量标准和基准测试技术并非新的概念,其实早在许多年前就已提出来,并用于测试早期的一些计算机系统。但是,设计基准测试以衡量服务器性能其本身就是一门完整的科学。我们的想法是这样的:对服务器的预期工作负载执行一个模拟运行过程。在执行运行过程并计时。然后在不同的系统上执行完全相同的测试并对比结果。
由于服务器架构的不断发展,仅在不同的计算机系统上进行简单的分析很难得出它们的性能参数。因此,服务器环境下的测量标准和基准测试开始出现。但是,仍旧有个问题:由于其本身就不统一的架构和不同的操作系统与工作负载,其运行情况亦不相同。因此,期间就要考虑许多不同的变量。
在本文中,我们统一使用Windows任务管理器来监测应用程序或进程是如何影响我们的内存或CPU使用率的。这就是度量测试,尽管这还只是一个非常简单的层次。Windows任务管理器的问题在于其不会显示设备实际的性能状况。分层缓存系统、个性化应用程序、定制硬件、海量数据库、非统一内存以及并发多线程处理器都会对现代计算机系统的性能产生巨大影响。
“科学”的性能测试
服务器的性能通常不会只受一个因素影响,因此,进行服务器性能测试有一点类似于科学实验。进行服务器性能测试的非常好的做法是在分析中采用科学的方法。这个方法包括六个步骤,其分别为观察、初步假设、结果预测、测试、理论测试结果和结论。测试过程中搜集的实验数据是否支持结论。测试中收集的同一数据是否能得出非常好的和最差的服务器性能等级。以下是这个科学方法的六个步骤:
1. 观察:我们假设系统管理员购买了一台服务器,现在看看它的非常好的性能。第一步是确定服务器预期任务。其将作为一个虚拟平台还是运行一个专门的应用程序?确定这些问题之后,就可以开始基准测试了。切记,测量标准和基准测试将根据测试内容和使用的设备而有所变化。例如,如果作为数据库系统可能会强调处理器测试,而用于网络服务系统的话可能会突出网络性能。
2. 假设:在这个步骤,工程师设定一个基准目标。假设什么或者测试需要完成什么?简单地进行一个度量测试将得出一些试验结果,但是没有方向或明确的目标的话,这些结果可能是无用的。为测试创建一个基本的目标,并且所有的测试方法都围绕这个目标。例如,工程师可能会设法测试其占用的内存以让应用程序处于非常好的运行状态。他或她可能因此推测,给定“X”内存大小可以达到非常好的工作负载。这可以立足于以前的研究,供应商提供的基准或其他的来源。确保你的假设是可测试的。也就是说,不要提出一个只是基于数据的而基准测试却无法证实的假设。
3. 预测:接下来,对服务器基准测试做一个大体预测。假设该设备将被作为一个专门的应用服务器。系统管理员能够预测,为工作负载增加额外的核心,设备性能将提升,同样,应用程序的性能也将会改善。在某些情况下,工程师甚至可以预测改善的比例,并希望通过基准测试进行验证。
4. 环境控制:变量设置。例如,可能要给服务器分配一些核心。此时,管理员每次应只更改一个设置,直到他或她能够接受在此基础上的性能变化。工程师可能需要给服务器设置为6GB的内存,并测试其与其他设备相互配合的情况(CPU、影像、硬盘以及相关联的设备)。设置不同的变量,包括修改处理器设置,但其他设置都处于最初状态。
5. 测试:变量都设置好之后,现在开始进行测试。从基准线开始进行测试(已知的起点),并有系统地调整服务器设置。每个测试序列都会有一个结果,记录结果以便以后引用。在这种情况下,一个测试序列可看做是一次硬件设置更改。每应用一次新的设置,都必须重新进行测试并记录结果。一旦有足够的运行周期,工程师应该有一份完整的数据以完成他们的推论。
6. 推论和结论:进行测试并确认应用程序的实际性能以及给定预计资源或设置后的性能。例如,在只有一半数量的预期核心后,确定应用程序的非常好的运行效果。从这点起,确定核心与其他当前变量(所需的内存大小、当前运行的应用程序数量、软件升级/服务包等)结合给服务器提供的非常好的性能。注意,任何变量的改变都需要进一步实验。