服务器能力测算.docx
《服务器能力测算.docx》由会员分享,可在线阅读,更多相关《服务器能力测算.docx(11页珍藏版)》请在冰豆网上搜索。
服务器能力测算
FinalrevisionbystandardizationteamonDecember10,2020.
服务器能力测算
服务器能力测算
一、术语和定义
、信息系统
由计算机、通信设备、处理设备、控制设备及其相关的配套设施构成,按照一定的应用目的和规则,对信息进行采集、加工、存储、传输、检索等处理的人机系统。
、软硬件平台
指信息系统运行的环境,主要包括硬件(服务器、存储)和软件(操作系统、数据库和中间件)部分。
、非安全区
即Internet,此区域允许外网用户随意访问。
、安全区
内网,此区域通常不对外提供服务。
、DMZ区
又称非军事区,介于非安全区与安全区之间,此区域按需对外网用户提供部分服务。
、FCSAN
指采用光纤通道的存储区域网络,是一种将存储设备、连接设备和服务器集成在一个高速网络中的技术,SAN作为存储网络,与LAN网络隔离,主要承担数据存储任务。
、FCSwitch
指光纤通道交换机,是一种高速的网络传输中继设备,以光纤作为传输介质,是组成FCSAN光纤存储网络的光纤交换机。
、磁盘阵列
由多个容量较小、速度较慢的磁盘组合成一个磁盘组,以提升整体性能和存储空间。
、虚拟机
指使用系统虚拟化技术,运行在一个隔离环境中、具有完整硬件功能的逻辑计算机系统。
、负载均衡
分为硬件和软件负载均衡,软件负载均衡指通过将负载均衡软件安装在一台或多台服务器相应的操作系统上来实现负载均衡,硬件负载均衡是直接将负载均衡设备部署在服务器和外部网络之间,专门完成负载均衡任务。
、关键应用系统
指对业务开展起核心的支撑作用的,对可靠性(Reliability)、可用性(Availability)和可服务性(Serviceability)等具有非常高要求的应用系统,如资产管理系统、营销管理系统、财务管理系统、人力资源系统、协同办公系统和综合管理系统。
、非关键应用系统
指除关键应用系统外的应用系统。
、TPC-C测试
指模拟一个批发商的订单管理系统进行数据库事务处理测试,主要衡量服务器及数据库软件处理在线查询交易处理(OLTP)的性能表现,正规TPC-C测试结果发布必须提供tpmC值,即每分钟完成多少笔TPC-C(TPC-CTransactionPerMinute)数据库交易。
、业务交易
在TPC-C估算法中,业务交易指的是用户的业务请求,用户每次查询、修改和删除操作均各算一次业务交易。
二、软硬件平台架构
1、网络从安全角度上分,一般分为DMZ区和安全区(内网),根据应用的用途、架构、功能,选择适合的网络环境。
2、DMZ区和安全区(内网)内各信息系统应按照相关信息安全等级保护的要求,依据分区、分级、分域的原则,进行安全域的划分,实现各安全域差异化的信息安全防护。
3、软件架构方面,对维护简单、不需要更新客户端的应用系统,建议采用Browser/Server(B/S)架构,对响应时间要求快、客户端操作界面复杂和有较多个性化要求的应用系统,可采用Client/Server(C/S)架构。
4、对性能要求不高的B/S架构应用系统,可采用Web客户端/应用服务器/数据库服务器三层架构;对性能要求高的B/S架构应用系统,应采用Web客户端/Web服务器/应用服务器/数据库服务器四层架构,Web服务器用于专门处理HTTP请求(request),应用服务器通过多种协议为应用系统提供处理商业逻辑(businesslogic)。
三、存储设备
1、存储设备包括本地物理服务器(或者虚拟机)的存储设备和共享存储设备。
对于共享存储设备,结构化数据建议采用支持FCSAN或高带宽、低延迟的磁盘阵列,非结构化数据可以采用高性价比的NAS作为存储设备。
2、存储设备的选择主要考虑性能、管理复杂程度与可扩展性,应支持存储虚拟化技术,以提高存储资源的利用率,降低管理复杂度和成本,支持开放结构,可方便的被其他厂商的系统管理软件使用,支持动态可扩展,无须终止应用程序即可扩展存储空间。
3、对可用性要求高、数据读取速度快、存储空间需求大、在线可扩展等应用系统,原则上应使用共享存储设备;数据库服务器及虚拟化的物理服务器应通过存储网络和共享存储设备相连。
4、对于关键应用系统,建议采用数据分级存储,根据数据的访问频率、保留时间、容量、性能要求等因素设置数据迁移规则,将访问频率较低的数据存储在磁带库等成本较低、速度较慢的存储设备中,将访问频率较高的数据存储在磁盘或者磁盘阵列等成本较高、速度较快的存储设备中。
四、服务器
1、数据库服务器建议采用小型机或者高性能服务器期,应用服务器/Web服务器建议采用机架服务器或刀片服务器。
2、针对服务器硬件配置要求较低、无特殊硬件(图像显示卡、音频卡、加密卡等)要求和I/O需求不高(IO吞吐率不超过50MB/s)的信息系统建议运行在虚拟机上,以提高资源利用率。
3、虚拟机数据应存放在共享存储设备上,以提高整体系统的可用性和性能。
4、关键应用系统的应用服务器/Web服务器前端应部署硬件负载均衡设备,根据预设的负载均衡策略,将用户访问导向负载压力较小的虚拟机/物理服务器。
五、负载均衡
1、负载均衡设备主要应用于应用服务器和WEB服务器,关键应用系统因对性能要求较高,建议以共享的方式使用硬件负载均衡设备。
2、使用硬件负载均衡有两种部署方式:
直联和旁路方式,建议采用旁路方式,将多台负载均衡设备分别连接到多台核心交换机,多台负载均衡设备间互为备份,不同应用系统的应用服务器/Web服务器集群共用多台负载均衡设备。
六、资源分配方法
对存储资源采用分解法估计,对数据库服务器资源采用TPC-C值估算法,对Web服务器资源采用SPECweb2005估算法,对应用服务器采用SPECjbb2005估算法。
资源分配的基本方法是首先了解信息系统的非功能性需求,初步估计各类型服务器(数据库服务器、应用服务器、Web服务器、接口服务器和其他服务器)总体资源需求,再根据需求冗余、安全等方面要求,确定各类型服务器所需物理服务器数量,基本原则如下:
1)单台服务器能提供足够处理能力的不再分解为多台物理服务器。
2)应用服务器采用多个逻辑(物理)节点组成集群时,4个节点以下(含4个)的集群,总体处理能力一般按各节点处理能力总和的60%计算,4个节点以上的集群,总体处理能力一般按各节点处理能力总和的50%计算。
3)web服务器采用多个逻辑(物理)节点组成集群时,4个节点以下(含4个)的集群,总体处理能力一般按各节点处理能力总和的70%计算,4个节点以上的集群,总体处理能力一般按各节点处理能力总和的60%计算。
本文主要介绍数据库服务器、应用服务器、Web服务器的资源估算方法,其他类型服务器的资源可参考进行估算。
在进行实际分配资源时,可根据资源需求的估算进行一定程度上的调整。
七、服务器资源估算方法
、数据库服务器TPC-C估算法
1、适用范围:
适用于对数据库服务器(应用服务器、Web服务器可参考)所需服务器的CPU能力进行估算。
根据估算出的TPC-C值选择合适的服务器和服务器配置。
2、原理介绍:
该估算法是通过计算应用系统峰值每分钟需要处理的业务交易数,再综合考虑业务交易的复杂程度、未来业务交易数量的增长和CPU处理余量等因素,通过公式计算得出一个估算值,以此来评估需要服务器必须达到的TPC-C值。
3、计算公式:
TPC-C值=((TASKx80%)/T)xSxF/C
4、参数解释:
TASK:
典型工作日平均业务交易总量,指的是应用系统需要处理的用户业务请求的总和。
TASKx80%:
假设典型工作日80%的业务交易集中在高峰时段。
TASKx80%/T:
即应用系统峰值每分钟处理的业务交易数。
T:
应用系统典型工作日业务交易峰值(完成80%交易)持续时间,以分钟为单位。
S:
实际业务交易操作相对于标准TPC-C测试基准环境交易的复杂程度比例。
F:
系统未来的业务交易量发展冗余预留,需要根据应用系统情况估算。
C:
服务器CPU利用率估算值。
实际应用经验表明,服务器的CPU利用率高于80%则表明CPU的利用率过高会产生系统瓶颈,而利用率处于75%时,是处于利用率最佳状态。
此值一般设定为C=75%。
5、计算步骤:
步骤一:
估计应用系统平均典型工作日处理的业务交易总量
可以通过以下方法估算:
1、估算典型工作日平均登录系统的用户数。
2、估算平均典型工作日每个用户执行的业务交易数。
例如,如果平均每个用户执行五次查询、五次修改和五次保存操作,那么平均每个用户执行的事务数为15次。
3、根据1和2估算出应用系统平均每典型工作日处理的业务交易总量。
步骤二:
估算应用系统每日峰值持续时间(单位为分钟)
估算应用系统典型工作日峰值持续的时间,指的是应用系统典型工作日每天繁忙的时间。
例如,股票交易系统每天的繁忙时间为上午9:
30至11:
30和下午13:
00至15:
00,那么它的峰值持续时间为3+2=5小时=300分钟。
步骤三:
估算应用系统峰值每分钟需要处理业务交易数
计算应用系统峰值每分钟需要处理业务交易数时,需要估算典型工作日高峰时间处理的业务交易数占每天平均处理的业务交易总数的比例。
通常按照20-80的原则进行估算,即80%的业务交易在高峰时间进行,20%的在非高峰时间进行
根据上述步骤,可以算出应用系统峰值每分钟需要处理业务交易数。
步骤四:
估算应用系统事务复杂度
由于实际业务交易的复杂程度与TPC-C标准测试中的业务交易存在较大的差异,应设定一个合理的对应值,根据经验,简单事务的S值为2-5,一般复杂事务为6-12,较复杂事务为13-16,高度复杂事务为17-20。
针对数据库服务器,S值建议设置为15。
步骤五:
估算应用系统未来一段时间后预留量。
如果预计未来用户数翻番,预留量即为200%。
步骤六:
将以上各参数值代入公式,计算出TPC-C值。
步骤七:
根据计算出TPC-C值,选择等于或者大于TPC-C值的目标服务器。
6、TPC-C估算法实例
1)情景描述:
A、某应用系统平均每天20,000个用户次登录系统;
B、平均每个用户执行五个查询事务和五个更新事务;
C、每天最忙时间从上午9:
15到上午10:
15时间段;
D、未来一年,用户数估计要增加一倍。
2)计算步骤:
步骤一:
估算应用系统峰值每分钟需要处理事务数,高峰时间段每分钟需要处理事务数=20,000x(5+5)x80%/60=。
步骤二:
估算应用系统事务复杂度:
本实例事务复杂度为15。
步骤三:
估算应用系统未来一段时间后预留量:
预留量为200%。
步骤四:
将以上各参数值代入公式,计算出TPC-C值。
TPC-C值=*15*200%/75%=106,666
、未公布服务器TPC-C值估算法
1、适用范围:
本方法适用于通过厂商已公布型号服务器的TPC-C值估算未公布服务器的TPC-C值。
2、原理介绍:
对于非满配置的服务器需要进行估算,而TPC-C性能指标反映的是服务器的整体性能指标,包括:
系统结构、处理器、缓存、内存、I/O等,因此不能简单从TPC-C值推算出CPU、内存的数值,需要综合考察设备的整体性能。
为了简化计算,假设服务器的TPC-C值和CPU数和频率呈线性关系,因此可以根据满配置的服务器大概估算出非满配置的相同型号或同档次服务器的TPC-C值。
3、计算公式:
目标配置服务器的TPC-C值≈(同型号服务器满配置的服务器的TPC-C值÷CPU个数÷CPU主频频率)*估算服务器的CPU个数*CPU主频频率
4、计算步骤:
步骤一值或者通过厂商获取该值。
步骤二:
将满配置服务器型号的CPU个数和主频、目标配置的服务器的CPU个数和主频等代入公式。
步骤三:
通过公式计算目标配置的服务器的TPC-C值。
、Web服务器SPECweb2005估算法
适用范围:
适用于为支持满足特定吞吐量和客户请求响应速率要求的WEB服务器的性能进行估算。
原理介绍:
Web服务器通常需要衡量它可以支持满足特定吞吐量和客户请求响应速率要求的WEB服务器的最大并发连接数量,而SPECweb2005是由标准性能评估组织(SPEC)专门开发的Web服务器基准测试。
服务器厂商通常会提供每种型号服务器的SPECweb2005值。
使用本方法估算不考虑网络因素,假设客户端和服务器位于同一局域网中,网络传输时间可以忽略。
计算公式:
SPECWeb2005值=(总用户数*在线率*在线用户平均发起http请求数)/(1—冗余率)
参数解释:
总用户数:
应用系统总的用户数。
在线率:
应用系统使用高峰时用户的在线率。
在线用户平均发起http请求数:
平均每个在线用户发起的http请求数量。
冗余率:
需要预留的冗余率。
计算步骤:
步骤一:
估算系统总的用户数。
步骤二:
估算应用系统使用高峰时用户的在线率。
步骤三:
估算平均每个用户发起的http请求数量。
步骤四:
设置预留的冗余率。
步骤五:
将步骤一、二、三、四的估算值代入公式,计算出SPECweb2005值。
步骤六:
根据计算出SPECweb2005值,选择等于或者大于SPECweb2005值的目标服务器。
、应用服务器SPECjbb2005估算法
使用范围:
适用于估算Java类应用服务器所需达到的服务器性能。
原理解释:
SPECjbb2005是评估服务器端Java性能的SPEC测试工具。
SPECjbb2005通过模拟三层C/S系统(主要是中间层)来评估服务器端Java的性能。
服务器上运行基于J2EE的中间应用软件平台,可以将其应用处理能力量化为Java处理能力性能值SPECjbb2005,同时充分考虑系统的冗余处理能力以及系统资源分配情况,即可估算出服务器的处理能力性能值。
公式:
SPECjbb2005=A×B/(1-C-D)
参数解释:
A:
每秒最多需要同时处理的业务交易量。
B:
每笔业务交易需消耗的SPECjbb2005峰值,根据经验,每笔业务交易消耗一般为200个bops,或根据该笔业务交易的java语句数量进行计算,B=该笔业务交易的java语句数/5。
C:
系统的冗余处理能力。
D:
非Java应用所占用的系统资源百分比。
例如某系统业务交易峰值为1000笔/秒,系统冗余处理能力预留30%,非Java应用所占用的系统资源百分比为20%,根据计算公式,服务器SPECjbb2005性能值为:
1000*200/(1-30%-20%)=400,000。
、数据库服务器内存估算法
适用范围:
适用于估算数据库服务器(应用服务器、Web服务器可参考)所需的内存。
原理介绍:
数据库服务器相对其他服务器来说,因为涉及大量的数据处理,需要把数据载入内存,以加快处理速度,所以需要更多的内存。
计算方法:
根据标准化设计,将数据库内存容量(单位为G)和CPU的核心的数量的比例按照4:
1配置,一个CPU的核心对应4G内存。
例如服务器配置两个4核CPU则建议配置32G内存。