大家好,今天来为大家分享服务器可靠测试的一些知识点,和如何测试服务器的稳定*的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
一、如何测试服务器的稳定*
服务器稳定*是最重要的,如果在稳定*方面不能够保证业务运行的需要,在高的*能也是无用的。
正规的服务器厂商都会对产品惊醒不同温度和湿度下的运行稳定*测试。重点要考虑的是冗余功能,如:数据冗余、网卡荣誉、电源冗余、风扇冗余等。
一些测试方法主要分以下几种:
压力测试:已知系统高峰期使用人数,验证各事务在最大并发数(通过高峰期人数换算)下事务响应时间能够达到客户要求。系统各*能指标在这种压力下是否还在正常数值之内。系统是否会因这样的压力导致不良反应(如:宕机、应用异常中止等)。
Ramp Up增量设计:如并发用户为75人,系统注册用户为1500人,以5%-7%作为并发用户参考值。一般以每15s加载5人的方式进行增压设计,该数值主要参考测试加压机*能,建议Run几次。以事务通过率与错误率衡量实际加载方式。
Ramp Up增量设计目标:寻找已增量方式加压系统*能瓶颈位置,抓住出现的*能拐点时机,一般常用参考Hits率与吞吐量、CPU、内存使用情况综合判断。模拟高峰期使用人数,如早晨的登录,下班后的退出,工资发送时的消息系统等。
另一种极限模拟方式,可视为在峰值压力情况下同时事务操作的系统极限操作指标。加压方式不变,在各脚本事务点中设置同集合点名称(如:lr_rendzvous("same");)在场景设计中,使用事务点集合策略。以同时达到集合点百分率为标准,同时释放所有正在Run的Vuser。
稳定*测试:已知系统高峰期使用人数、各事务操作频率等。设计综合测试场景,测试时将每个场景按照一定人数比率一起运行,模拟用户使用数年的情况。并监控在测试中,系统各*能指标在这种压力下是否能保持正常数值。事务响应时间是否会出现波动或随测试时间增涨而增加。系统是否会在测试期间内发生如宕机、应用中止等异常情况。
根据上述测试中,各事务条件下出现*能拐点的位置,已确定稳定*测试并发用户人数。仍然根据实际测试服务器(加压机、应用服务器、数据服务器三方*能),估算最终并发用户人数。
场景设计思想:
从稳定*测试场景的设计意义,应分多种情况考虑:
针对同一个场景为例,以下以公文附件上传为例简要分析场景设计思想:
1)场景一:已压力测试环境下*能拐点的并发用户为设计测试场景,目的验证极限压力情况下测试服务器各*能指标。
2)场景二:根据压力测试环境中CPU、内存等指标选取服务器所能承受最大压力的50%来确定并发用户数。
测试方法:采用1)Ramp Up-Load all Vusers simultaneously
2)Duration-Run Indefinitely
3)在Sechedule-勾选Initalize all Vusers before Run
容错*测试:通过模拟一些非正常情况(如:服务器突然断电、网络时断时续、服务器硬盘空间不足等),验证系统在发生这些情况时是否能够有自动处理机制以保障系统的正常运行或恢复运行措施。如有HA(自动容灾系统),还可以专门针对这些自动保护系统进行另外的测试。验证其能否有效触发保护措施。
问题排除*测试:通过原有案例或经验判断,针对系统中曾经发生问题或怀疑存在隐患的模块进行验证测试。验证这些模块是否还会发生同样的*能问题。如:上传附件模块的内存泄露问题、本模块优化、开启Tivoli*能监控对OA系统*能的影响等等。
测评测试是用于获取系统的关键*能指标点,而进行的相关测试。主要是针对预先没有明确的预期测试结果,而是要通过测试获取在特定压力场景下的*能指标(如:事务响应时间、最大并发用户数等)。
评测事务交易时间:为获取某事务在特定压力下的响应时间而进行的测试活动。通过模拟已知客户高峰期的各压力值或预期所能承受的压力值,获取事务在这种压力下的响应时间。
评测事务最大并发用户数:为获取某事务在特定系统环境下所能承受的最大并发用户数而进行的测试活动。通过模拟真实环境或采用真实环境,评测在这种环境下事务所能承受的最大并发用户数。判定标准阈值需预先定义(如响应时间,CPU占用率,内存占用率,已出现率峰值,已出现吞吐量峰值等)。
评测系统最大并发用户数:为获取整个系统所能够承受的最大并发用户数而进行的的测试活动。通过预先分析项目各主要模块的使用比率和频率,定义各事务在综合场景中所占的比率,以比率方式分配各事务并发用户数。模拟真实环境或采用真实环境,评测在这种环境下系统所能承受的最大并发用户数。判定标准阀值预先定义(如响应时间,CPU占用率,内存占用率,已出现率峰值,已出现吞吐量峰值等)。取值标准以木桶法则为准(并发数最小的事务为整个系统的并发数)。
评测不同数据库数据量对*能的影响:针对不同数据库数据量的测试,将测试结果进行对比,分析发现数据库中各表的数据量对事务*能的影响。得以预先判断系统长时间运行后,或某些模块客户要求数据量较大时可能存在的隐患。
问题定位测试在通过以上测试或用户实际操作已经发现系统中的*能问题或怀疑已存在*能问题。需通过响应的测试场景重现问题或定义问题。如有可能,可以找出引起*能问题所在的代码或模块。
该类测试主要还是通过测试出问题的脚本场景,并可以增加发现和检测的工具,如开启Tivoli*能监控、开启HeapDump输出、Linux资源监控命令等。并在场景运行过程中辅以手工测试。
二、可靠*测试包括哪些
可靠*测试包括组件压力测试、集中压力测试、真实环境测试等。
组件压力测试:压力测试是指模拟巨大的工作负荷以查看应用程序在峰值使用情况下如何执行操作。利用组件压力测试,可隔离构成组件和服务、推断出它们公开的导航方法、函数方法和接口方法以及创建调用这些方法的测试前端。对于那些进入数据库服务器或一些其他组件的方法,可创建一个提供所需格式的哑元数据的后端。测试仪器在观察结果的同时,反复插入哑元数据。
集中压力测试:对每个单独的组件进行压力测试后,应对带有其所有组件和支持服务的整个应用程序进行压力测试。集中压力测试主要关注与其他服务、进程以及数据结构(来自内部组件和其他外部应用程序服务)的交互。集中测试从最基础的功能测试开始。您需要知道编码路径和用户方案、了解用户试图做什么以及确定用户运用您的应用程序的所有方式。
真实环境测试:在隔离的受保护的测试环境中可靠的软件,在真实环境的部署中可能并不可靠。虽然隔离测试在早期的可靠*测试进程中是有用的,但真实环境的测试环境才能确保并行应用程序不会彼此干扰。这种测试经常发现与其他应用程序之间的意外的导致失败的交互。
可靠*硬件测试
可靠*硬件测试也称产品的可靠*评估,产品在规定的条件下、在规定的时间内完成规定的功能的能力。产品在设计、应用过程中,不断经受自身及外界气候环境及机械环境的影响,而仍需要能够正常工作,这就需要以试验设备对其进行验证,这个验证基本分为研发试验、试产试验、量产抽检三个部分。
可靠*硬件试验包括:老化试验、温湿度试验、气体腐蚀试验、机械振动试验、机械冲击试验、碰撞试验和跌落试验、防尘防水试验以及包装压力试验等多项环境可靠*试验。
三、怎么判断服务器故障率
要判断服务器的故障率,首先要通过监控系统获取关键信息。实时监控软件能显示服务器运行状态,分析历史数据则能计算故障频率。查看服务器的日志文件,系统和应用日志对定位故障至关重要。统计KPI,如MTBF、MTTR和可用*百分比,能量化故障情况。
第三方评估也是一个有力工具,如专业审计能提供独立的系统健康评估,基准测试则能对比找出不足。用户反馈同样重要,通过调查问卷了解服务中断频率,以及服务台记录的故障报告。维护和维修记录能反映预防*和修复*维护对故障的影响,而厂商提供的数据则显示产品本身的可靠*。
例如,浪潮信息的内存故障智能预警修复技术改善了服务器的故障率。了解常见服务器故障原因,如参考信息[1]和[2],能帮助你优化策略,如提升监控、改进维护流程、升级硬件或软件,以提升服务器的稳定*和可靠*。
全面评估并根据这些数据采取针对*措施,是降低服务器故障率的关键步骤。