服务器处理能力,你估算正确过吗?
作者:成晓旭
1 【引题】
但凡写过技术方案的都知道,在技术方案最终落实到工程实施部署时,必须编制出当前解决方案需要部署的IT设备及环境,包括:需要的网络环境、端口、带宽、组网方式、网络安全保障措施;需配置的服务器设备性能、数量;需配置的存储数据存储设备、容量、存储速率;甚至还需考虑整个系统的备份设备容量、备份I/O数、速率、备份策略等。
严格说来,无论是系统厂商、集成公司、还是研究院、设计公司,在最终提供方案的硬件配置时,都应该以业务需求为依据、适当考虑客户业务的发展趋势和系统冗余,详细估算:当前业务需求对网络带宽、对处理能力、对数据存储容量的指标。因此,本文以自己的项目案例和经验为基础,简述计算机处理能力如何正确估算,供大家参考。
2 【性能评测标准】
众所周知,事务处理性能委员会的TPC-C标准,是测算和衡量计算机硬件设备性能的行业标准。随着B/S技术架构的大行其道,SPEC组织专门推出了针对Web服务器响应客户端Web访问请求的性能测算标准,即SPEC web系列。因此,如果是传统的基于事务处理模式的服务器,仍采用TPC-C的方式进行测算;如果是Web服务器,则需要采用SPEC web系列的标准进行测算。然而,很遗憾的看到,很多人在测算服务器性能时完全忽视这两种差别。
1.1 TPC-C标准
TPC-C基准是事务处理委员会建立的一个专门演示在线事务处理性能(OLTP)的性能基准,它的测量方法是为了使客户能够评估不同的在线事务处理系统的性能,这些事务进程于一个可控制的状态下在一个标准的数据库中运行。
TPC-C的事务处理是在一个9个表的数据库上实现的事务处理过程包括:更新、插入、删除、终止,以及对主和次级键的访问,每种事务处理95%的响应时间应小于或等于5秒,其中,库存水平的响应时间可以在60秒以内。TPC-C值表示每分钟处理的标准事务量,单位是tpmC。
1.2 SPEC web标准
SPEC web99,WEB 服务器可以支持的并发接入数。SPECweb99 检测程序模拟客户通过慢Internet 连接,向Web 服务器发送HTTP 工作量请求。
SPEC Web2005,作为SPECweb99的继承者,SPECweb2005延续了SPEC的传统测试的原理,通过多台客户机向服务器发出Http Get请求,请求调用Web服务器上的网页文件,这些文件从数千字节到数兆字节不等。在相同的时间里,服务器回答的请求越多,就表明服务器对客户端的处理能力越强,系统的Web性能就越好。
3 【性能估算公式】
3.1 常见的错误估算方法
在技术方案评审和招投标评标过程中,我常常看到这样的评估服务器处理能力的表格:
示例一:
示例二:
不知道这种评估方法是从那里开始的,在技术方案文档中,曾多次看到这样的评估模型和表格。即不全是TPC-C的评估方法,又不全是SPEC Web体系的评估方法。
3.2 TPC-C估算公式
TPC-C是用计算机设备在每分钟内所能处理的标准事务的数量来衡量其处理能力的多少;因此,估算一个应用场景对处理能力的需求,本质上就是估算出每类业务处理事务对应的标准tpc-c事务量,然后在适当考虑冗余量。TPC-C的测算结果是每分钟的事务数,单位是tpmc。
TPC-C的通用估算公式如下:
TPC-C = ∑(每分钟业务事务量 * 标准事务量比率)/ (1 — 冗余率)。
例如:某业务系统有2类业务处理事务操作,业务事务1每分钟30000个,每个业务事务1操作相当于0.5个标准tpc-c事务;务事务2每分钟20000个,每个业务事务2操作相当于2个标准tpc-c事务;考虑30%的系统冗余。则该业务应用需要的处理能力为:
服务器处理能力(tpmc) = ((30000 X0.5) + (20000 X 2)) / (1 – 30%) = 78581。
3.3 SPEC Web估算公式
SPEC Web2005标准的衡量结果是一台Web服务器能够有效响应客户端的Web请求的最大极限个数。因此,测算的结果应该是一个Web请求数字,单位是个。
在评估应用服务器的SPEC Web2005值时,通常的方法是通过系统的在线用户,结合其在线率估算出并发用户数,在参照日常业务使用场景中可能发起的http请求来进行估算。
SPEC Web2005的参考估算公式如下:(注意:公式仅供参考,需根据项目的具体情况自行设计估算模型)
Web访问响应能力(SPEC Web2005) = (在线用户数 * 在线率 * 在线用户平均发起http请求数)/ (1 — 冗余率)。
例如:某业务系统的在线用户数为2000,在线率10%,每在线用户平均发起的http请求数为3,考虑30%的系统响应能力冗余。则负责该业务请求的Web服务器的响应能力为:
Web访问响应能力(个) = 2000 * 10% * 3 / (1 – 30%) = 286。
4 【应用实例】
下面以一个实际工程项目的应用服务器(部署Web Service中间件)的性能估算为例进行示范。
应用服务器上运行中间件产品,承担系统的各类业务逻辑组件运行计算,收敛系统用户对数据库服务器的访问请求,集中对外提供应用服务。通过分析,应用服务器性能需求在于:提供Web应用服务、业务逻辑处理。
Web应用服务方面,根据的业务预测数据,应用服务器平均在线并发用户按200估算,并发在线率20%,每用户平均发起3个http链接,参照SPECweb99的评测标准,Web应用服务性能需求:Web服务器最大并发连接数=(120×20%×3)= 72。
业务逻辑处理性能方面,主要的应用服务组件性能需求在于:集团数据监测分析、省数据监测分析、业务数据查询。据调研统计,集团数据为每分钟3585 条,省数据平均为每分钟51667条,业务信息查询请求平均为每分钟2151次;集团数据监测分析,每次业务操作约需3个标准tpcc事务,省数据监测分析,每次业务操作约需2个tpcc事务,业务信息查询,每次业务操作约需2个tpcc事务;则系统主机的处理能力需求TPCC值计算如下:
因此,应用服务器的处理能力配置不能低于196731tpmc,其Web2005配置指标不能低于72个。
5 【经验总结】
针对事务处理型应用场景,需要采用TPC-C的估算方法,估算出具体需要的总tpmc值;而针对Web客户端请求响应型应用场景,除了估算其业务处理能力之外,还需要评估其对客户端Web请求的响应能力,实际配置的服务器一般不能低于估算结果。
除了考虑存业务处理需要的处理能力需求外,还需要考虑设备运行环境上其他基础服务运行开销:例如操作系统、数据库服务器、Web服务器、应用中间件等。
由于当期硬件设备发展非常迅速,一般标配的PC服务器的tpcc值也常常是几十万,高配的甚至上百万。因此,还有两条经验提醒大家注意:
其一,如果业务需求的tpcc值测算出来其实很低(绝大部分应用都是如此),配置一台很低端的PC服务器都能够满足处理能力需求,不能因为想给客户提供高配置的设备,而胡乱的编纂tpcc值;而应该从其他方面寻找更加充分有力的理由。
其二、由于PC服务器处理能力的增强,tpcc值往往不再成为必须选择小型机的一个比较充分的理由;但需要给客户报配小型机方案时,可以尝试从稳定性、可靠性、高I/O需求、设备同构需求、外围设备特殊要求等方面多想办法,而不能再一味只从tpcc值这个角度去考虑。
分享到:
相关推荐
在估算服务器处理能力时,需要选择合适的估算方法,避免使用不正确的估算方法。同时,需要考虑到系统冗余、备份设备容量、备份I/O数、速率、备份策略等因素,以确保服务器处理能力的估算结果是准确的。
服务器处理能力估算对于IT系统设计和实施至关重要,它涉及到服务器硬件配置的选择,以确保系统能够高效、稳定地处理业务需求。以下将详细解释如何正确估算服务器处理能力。 首先,估算服务器处理能力通常需要依据...
在服务器处理能力的估算中,理解并正确应用各种性能评测...对于软件开发而言,准确的服务器处理能力估算有助于规划硬件资源,优化系统性能,避免因低估需求而导致的性能瓶颈,或者因过度配置而造成不必要的成本浪费。
TPMC值的计算涉及到多个因素,包括服务器硬件性能、数据库处理能力以及系统的价格。 TPC(Transaction Processing Performance Council)是一个非营利组织,它制定了几套基准程序来评估系统的性能。尽管最初有TPC-A...
服务器性能计算公式是衡量服务器运行效率和处理能力的重要指标。TPM(Transactions Per Minute)和TPCC(Transaction Processing Performance Council's Benchmark for Online Transaction Processing,事务处理性能...
CPU处理能力决定了服务器并行处理任务的能力,内存大小影响数据处理速度和系统响应时间,硬盘存储则关乎数据的存储空间,网络带宽决定数据传输的速度。在Excel小工具中,这些资源可能以计算公式的形式,结合用户并发...
数据库服务器的处理能力是基于标准模型中的事务操作数计算的,而存储容量则需要考虑用户数、操作频率、单次操作的存储占用以及冗余设置。例如,对于宁夏联通的综合网管业务,存储估算为157GB,采用了RAID 0+1的冗余...
例如,IBM提出的TPM计算公式(TPM=TASK x AVGTRANS/SERVTIME x UPTIME%),就是一种根据业务任务、平均交易时间和服务时间来估算主机处理能力的方法。 总之,确定服务器配置是一个涉及多个层面的复杂过程,需要综合...
在这个项目中,Java的网络编程能力被用来建立客户端与服务器之间的连接,进行数据传输,从而测量带宽。 2. **TCP/IP协议** TCP(传输控制协议)和IP(互联网协议)是网络通信的基础。TCP保证了数据的可靠传输,而...
在IT行业中,性能测试是评估服务器和应用程序能力的关键环节,特别是对于Web服务器而言,能够处理的并发用户数直接影响着服务的稳定性和用户体验。"Windows WEB服务器并发测试"是一个重要的议题,尤其在面临大规模...
例如,可以通过负载均衡技术分散请求,或者升级硬件配置来提升并发处理能力。此外,还可以通过调整IIS的配置,如增加工作进程数量、优化线程池参数等,来提高并发性能。 总之,确定服务器IIS的最大并发数是一项重要...
7. **性能优化**:在高并发环境下,服务器端可能需要优化处理大量并发请求的能力,比如使用线程池或异步处理模型。客户端也需要考虑资源效率,避免频繁的网络请求。 8. **错误处理与容错**:在分布式系统中,网络不...
3. 服务器是一种运算能力比PC强的计算机(A正确),通常不需要图形界面(C错误),但需要操作系统(D错误)。 4. 类比估算可以帮助项目团队理解管理层的预期(B正确),估算结果可能接近实际需要的时间(C正确),...
- 测试和评估:通过小规模工程的测试,估算Fuser处理能力和所需资源,以及确定缓存请求与非缓存请求的比例。 总结来说,SkylineGlobe服务器的硬件配置需要综合考虑服务器的计算能力、内存容量、存储需求以及网络...
它不仅包括了服务器处理请求的时间,还包括了网络传输的时间。RT是用户感知系统性能的重要指标,因为它直接影响用户体验。不同的应用有不同的响应时间标准,例如,游戏系统需要极快的响应时间(通常小于100毫秒),...
系统可行性分析则涉及网络目标的科学性和正确性论证,如数据分级、冗余策略、网络拓扑安全性评估和成本估算。 网络规划的后续阶段包括网络设计、工程实施、系统测试验收和运行维护,这些阶段共同构建了一个完整的...
- 并行处理:对于复杂的查询,可以利用数据库的并行处理能力来提高执行效率。 性能优化的过程通常是一个迭代的过程,需要不断地对SQL语句和数据库配置进行调整,同时利用数据库提供的性能监控工具来分析瓶颈所在,...
IOPS是衡量磁盘读写性能的关键指标,较高的IOPS值意味着更快速的数据处理能力。 IOPS的计算与文件大小有关,较小的文件可能会导致更多的磁盘读写操作,而较大的文件可能会在磁盘上连续存储,从而减少读写的次数。...
用合法用户名(有数据库)进行性能测试,得到的性能报告是 WinRadius 信令处理能力和数据库处理能力,体现 CPU 速度和数据库速度。 测试表明:最影响速度的是数据库处理,其次是自动数据库故障备份,最后是 Log ...