性能测试

测试技术-应用负载压力测试

天大地大妈咪最大 提交于 2019-11-29 10:06:28
** 应用负载压力测试 ** 1 概述 系统的负载压力是指系统在某种指定软件、硬件以及网络环境下承受的流量,例如并发用户数、持续运行时间、数据量等,其中并发用户数是负载压力的重要体现。当有大量用户同时使用时,可能会出现功能失效、性能衰减、甚至系统崩溃的现象。 负载压力测试是指在一定约束条件下测试系统所能承受的并发用户量、运行时间、数据量,以确定系统所能承受的最大负载压力。负载压力测试有助于确认被测系统是否能够支持性能需求,以及预期的负载增长等。负载压力测试不只是关注不同负载场景下的响应时间等指标,它也要通过测试来发现在不同负载场景下会出现的。 载压力测试包括并发性测试、疲劳强度测、大数据量测试等内容。 2 测试设计方法 2.1 负载测试 负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试。 2.2 压力测试 压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。通俗地讲,压力测试是为了发现在什么条件下系统的性能变得不可接受。压力测试是一种特定类型的负载测试。例如,访问一个页面的响应时间规定为不超过1秒,负载测试就是测试在响应时间为1秒时,系统所能承受的最大并发访问用户的数量,而压力测试就是测试系统在多大的并发访问用户数量下

netperf 网络性能测试

本秂侑毒 提交于 2019-11-29 06:18:53
发行版Linux和麒麟操作系统下netperf 网络性能测试 Netperf是一种网络性能的测量工具,主要针对基于TCP或UDP的传输。Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求/应答(request/reponse)模式。 工作原理 Netperf工具以client/server方式工作。server端是netserver,用来侦听来自client端的连接,client端是netperf,用来向server发起网络测试.在client与server之间,首先建立一个控制连接,传递有关测试配置的信息,以及测试的结果:在控制连接建立并传递了测试配置信息以后,client与server之间会再建立一个测试连接,进行来回传递特殊的流量模式,以测试网络的性能 软件安装 下载安装Netperf工具   下载链接:ftp://ftp.netperf.org/netperf/   [root@xiesshavip001 ~]# wget ftp://ftp.netperf.org/netperf/netperf-2.7.0.tar.gz 安装依赖包gcc cc   [root@xiesshavip001 ~]# yum install gcc cc -y 解压安装     发行版Linux(CentOS7等

nGrinder-世界上最简单但潜力无限的压力工具

社会主义新天地 提交于 2019-11-29 04:37:23
此次此刻,我很高兴能把nGrinder-也许是这世界上最简单但潜力无限的压力工具介绍给大家。我是Emily, 来自NDT(nGrinder开发团队)的发言人。 下面这些问题正在烦扰着你么? -想要优化你的网络应用以承载更高的负载? -想发现长时间的运行的内存泄露问题? -不想读厚达400页冗长无比的工具使用说明书? nGrinder正是你需要的! nGrinder是基于Grinder开源项目,但由NHN公司的nGrinder开发团队进行了重新设计和完善(所以叫做nGrinder)。nGrinder是一款非常易用(有人说甚至连小朋友也会用哦),有着乔布斯范儿的友好简洁的用户界面和controller-agent分布式结构的强大的压力测试工具。 Figue 1. Login page NDT在2011年发布了nGrinder1.0,并在此后2年中进行了不断的改进升级。现在,我们可以展现给各位的,是在2012年10月份发布的,最具代表性的nGrinder3.0( Github )。来自用户的反馈是令人振奋的,10天内大约有1000人访问了nGrinder发布站,其中91.4%是首次来访者。 nGrinder运行一个test,只需要3步:使用Python脚本创建测试场景,配置agent数量、进程或线程、周期、运行次数和ramp-up(可选),然后点击“Start”。接下来只需要等待

nGrinder在大型组织中的实际布署和应用

倾然丶 夕夏残阳落幕 提交于 2019-11-29 04:37:01
原文 : nGrinder Real Deployment in the Large Organization By JunHo.Yoon 我们的公司,NHN,拥有多个大型的产品。其中一个是韩国最受欢迎的搜索门户网站NAVER,拥有超过5千万的 用户。另一个是“Line”,这是目前最受欢迎的移动通信工具,注册用户超过1亿。另外还有涉及网络应用和游戏等类型的一些产品。除了这些,我们还开发了多种多样的开源平台产品,包括CUBRID- 支持高可用性的 开源关系数据库管理系统-nGrinder Wiki网站就包含在CUBRID的Wiki中:)。在NHN公司内部有1000多名开发者,他们总是努力实现那些杰出的想法并转化成产品,并使这些产品更具扩展性。 为了使这些产品更稳定,速度更快,从2011开始我们集中地使用nGrinder。目前我们在公司内部运行了多个nGrinder实例。但是我们要求的员工从最大的实例开始使用,它是由5个controller,40个agent以及5个不同的IDC(互联网数据中心)组成的。 我们有官方的DNS名称:http://ngrinder.nhncorp.com(只有NHN员工可以访问),在这5个控制器是指向L4(负荷平衡器)的。怎么做才能布署这样大型的nGrinder系统?请看 Controller Clustering Guide 。 <nGrinder

大型网站背后的高性能系统架构设计,互联网架构师JAVA架构师,java架构设计,java大型网站架构设计

℡╲_俬逩灬. 提交于 2019-11-29 02:12:45
大型网站背后的高性能系统架构设计,互联网架构师JAVA架构师,java架构设计,java大型网站架构设计 1. 性能测试 1.1. 性能指标 网站性能测试的主要指标有: 响应时间 - 响应时间(RT)是指从客户端发一个请求开始计时,到客户端接收到从服务器端返回的响应结果结束所经历的时间,响应时间由请求发送时间、网络传输时间和服务器处理时间三部分组成。 并发数 - 系统同时处理的请求、事务数。 吞吐量 - TPS(每秒事务数)、HPS(每秒 HTTP 请求数)、QPS(每秒查询数)。 性能计数器 - 系统负载、对象与线程数、内存使用、CPU 使用、磁盘与网络 IO 等。这些指标也是系统监控的重要参数。 1.2. 性能测试方法 性能测试 负载测试 压力测试 稳定性测试 1.3. 性能测试报告 性能测试报告示例: 1.4. 性能优化策略 性能分析 - 如果请求响应慢,存在性能问题。需要对请求经历的各个环节逐一分析,排查可能出现性能瓶颈的地方,定位问题。检查监控数据,分析影响性能的主要因素:内存、磁盘、网络、CPU,可能是代码或架构设计不合理,又或者是系统资源确实不足。 性能优化 - 性能优化根据网站分层架构,大致可分为前端性能优化、应用服务性能优化、存储服务性能优化。 2. 前端性能优化 2.1. 浏览器访问优化 减少 HTTP 请求 - HTTP 请求需要建立通信链路,进行数据传输

DevOps架构下如何进行微服务性能测试

China☆狼群 提交于 2019-11-29 01:47:14
一. 微服务架构下的性能测试挑战 微服务与DevOps 微服务是实现DevOps的重要架构 微服务3S原则 DevOps核心点 微服务架构下的业务特点 亿级用户的平台 单服务业务随时扩容 服务之间存在相互调用关系 版本更新快,上线周期短 微服务架构下的性能测试挑战 单服务流量激增时扩容 调用链条变长,调用关系更加复杂 微服务拆分导致故障点增多 ▼ ▼ ▼ 单服务变更性能影响如何评估? 性能瓶颈在各微服务间漂移,如何做好性能测试? 应对突发流量需求,扩容能否解决问题,如何扩容? 服务实例数量众多,如何收集信息,快速定位性能问题? 二. 微服务性能保障解决方案设计 性能测试平台服务化 性能测试服务架构 关键设计1:模块化管理,事务灵活组合与复用 关键设计2:应用与资源一体化编排 云性能测试服务: https://www.huaweicloud.com/product/cpts.html 三. 性能测试实施策略 分层开展微服务性能测试 单服务接口测试(契约) 验证单服务的各个接口能力基线以及组合接口的能力基线,服务间遵循契约化原则,大部分问题屏蔽在集成之前 全链路测试(SLA) 验证整个系统之上全链路场景以及多链路组合场景的性能,优化链路中性能不足的服务 伸缩能力验证(面向现网运维) 验证单服务的水平扩容能力,验证既定模型下的多链路组合场景的资源模型 系统从开发到上线需要做哪些测试

前端性能测试工具hiper介绍

落花浮王杯 提交于 2019-11-28 22:05:24
对前端性能测试工具还不了解,在请教了旁边的前端同事后学习到了简单的工具,在这里总结下。 前端的性能测试测什么? 以下是复制: 渲染引擎工作流 dom树构建:从html标签的解析开始,将各种标签解析为dom树中的各个节点,标签和dom树的中的节点是一一对应关系。 渲染树构建:将CSS和style标签中的样式信息解析为渲染树,渲染树由一些包含有颜色和大小等属性的矩形组成,它们将被按照正确的顺序显示到屏幕上。 渲染树布局和绘制:渲染树确定各个dom节点在屏幕中单确切位置,根据渲染树中的颜色等信息绘制出网页。 值得注意的是,这个过程是逐步完成的,为了更好的用户体验,渲染引擎将会尽可能早的将内容呈现到屏幕上,并不会等到所有的html都解析完成之后再去构建和布局渲染树。它是解析完一部分内容就显示一部分内容,同时,可能还在通过网络下载其余内容。 所以前端性能测试的重点之一,在于资源下载及渲染。 当当当~ 工具出场了~ 其实很多浏览器自带的开发者工具已经很好的完成了这个功能,比如chrome, 只是用命令行看起来高大上一点。 https://github.com/pod4g/hiper 推荐下这个,支付宝的前端开发做的 来源: https://www.cnblogs.com/spillage/p/11428992.html

性能测试中如何定位性能瓶颈

懵懂的女人 提交于 2019-11-28 17:30:00
性能测试这种测试方式在发生过程中,其中一个过渡性的工作,就是对执行过程中的问题,进行定位,对功能的定位,对负载的定位,最重要的,当然就是问题中说的“瓶颈”,接触性能测试不深,更非专家,自己的理解,瓶颈产生在以下几方面: 1、网络瓶颈,如带宽,流量等形成的网络环境 2、应用服务瓶颈,如中间件的基本配置,CACHE等 3、系统瓶颈,这个比较常用:应用服务器,数据库服务器以及客户机的CPU,内存,硬盘等配置 4、数据库瓶颈,以ORACLE为例,SYS中默认的一些参数设置 5、应用程序本身瓶颈, 针对网络瓶颈,现在冒似很少,不过也不是没有,首先想一下如果有网络的阻塞,断网,带宽被其他资源占用,限速等情况,应用程序或系统会是什么情况,针对WEB,无非是超时,HTTP400,500之类的错,针对一些客户端程序,可能也是超时,掉线,服务器下发的,需要服务器返回的信息获取不到还有一种更明显的情况,应该就是事务提交慢,如果封装事务的代码再不完善,一般造成的错误,无非就是数据提交不完整,或者因为网终原因+代码缺陷造成重复性提交。如此综合下来,肯定是考虑网络有瓶颈,然后考虑网络有问题时,怎样去优化,是需要优化交互的一些代码,还是接口之类的。 应用服务的瓶颈的定位,比较复杂,学习中,不过网上有很多资料可以参考的。一般像tomcat,weblogic之类的,有默认的设置

性能测试中如何定位性能瓶颈

白昼怎懂夜的黑 提交于 2019-11-28 17:29:19
性能测试中如何定位性能瓶颈 性能测试的概念是什么,基本目的是什么,我想大家都基本清楚,不作详述,总之,性能测试只是测试过程中的一种方式,帮助我们的功能更好的运行,如果功能测试是可用,易用,满足需求、用户使用为目的,性能测试无非就是让这些目的更流畅。没有什么专业的概念,无非实现两个字:好用! 所以,性能测试这种测试方式在发生过程中,其中一个过渡性的工作,就是对执行过程中的问题,进行定位,对功能的定位,对负载的定位,最重要的,当然就是问题中说的“瓶颈”,接触性能测试不深,更非专家,自己的理解,瓶颈产生在以下几方面: 1、网络瓶颈,如带宽,流量等形成的网络环境 2、应用服务瓶颈,如中间件的基本配置,CACHE等 3、系统瓶颈,这个比较常用:应用服务器,数据库服务器以及客户机的CPU,内存,硬盘等配置 4、数据库瓶颈,以ORACLE为例,SYS中默认的一些参数设置 5、应用程序本身瓶颈, 针对网络瓶颈,现在冒似很少,不过也不是没有,首先想一下如果有网络的阻塞,断网,带宽被其他资源占用,限速等情况,应用程序或系统会是什么情况,针对WEB,无非是超时,HTTP400,500之类的错,针对一些客户端程序,可能也是超时,掉线,服务器下发的,需要服务器返回的信息获取不到还有一种更明显的情况,应该就是事务提交慢,如果封装事务的代码再不完善,一般造成的错误,无非就是数据提交不完整,或者因为网终原因

性能测试

回眸只為那壹抹淺笑 提交于 2019-11-28 13:52:15
1、性能测试指标: tps:>500 正确率:99.9% cpu:<70% 内存:<70% 单系统接口响应时间:<0.5s 全流程接口响应时间:<2s 2、单业务场景: nginx信息、redis信息、mysql、中间件(api网关gateway、注册中心eurka、配置中心apollo)、业务服务器 来源: https://www.cnblogs.com/zx1313/p/11059683.html