压力测试 订阅
作者: 蒂莫西·F·盖特纳 出版社: 中信出版社副标题: 对金融危机的反思译者: 益智 出版年: 2015-4-1页数: 456定价: 58.00元装帧: 假精装ISBN: 9787508649436 展开全文
作者: 蒂莫西·F·盖特纳 出版社: 中信出版社副标题: 对金融危机的反思译者: 益智 出版年: 2015-4-1页数: 456定价: 58.00元装帧: 假精装ISBN: 9787508649436
信息
作    者
蒂莫西·F·盖特纳
译    者
益智
定    价
58.00元
装    帧
假精装
书    名
压力测试
出版时间
2015-4-1
出版社
中信出版社
副标题
对金融危机的反思
ISBN
9787508649436
页    数
456
压力测试内容简介
拯救美国经济的焦点人物——美国有史以来最年轻的财政部长盖特纳,反思整个金融危机始末!在这本充满启迪的回忆录中,蒂莫西·盖特纳解释了美国如何成功渡过了其政治和金融系统的最终压力测试。作为纽约联邦储备银行的主席和美国总统贝拉克·奥巴马的财政部长,盖特纳帮助美国渡过了大萧条以来最严重的金融危机,从繁荣到萧条到抢救再到复苏。在这部坦诚、吸引人、有历史价值的回忆录中,带领读者领略危机的台前幕后,解释他如何做出各种艰难抉择以及在政治上不受欢迎的决定,用以修复一个破碎的金融体系,防止国家经济走向崩溃,避免了第二次经济大萧条,但却失去了美国人民的支持。《压力测试》揭示了盖特纳部长鲜为人知的一面。他讲述了早期作为一个年轻的财政部官员帮助应对1990年的国际金融危机,然后描述了在华尔街繁荣破灭之前他所看到的一切,所做的事情和他错过的事情。他带领读者进入其间,从危机开始,到加剧。然后失控,讨论他在纽约联储和财政部期间最具争议的任期,包括拯救贝尔斯登、雷曼兄弟破产时悲惨的周末,对AIG的救援和公司大量分红的愤怒,以及在奥巴马政府内部对他的广受批评但最终成功结束危机的计划所做的斗争,并将争取到在70多年来最全面的金融改革。 [1] 
收起全文
精华内容
下载资源
问答
  • 2021-02-25 19:14:17

    1、前言

    信息系统的性能是一种指标,表明信息系统对其及时性要求的符合程度。对于一个系统而言,包含并发用户数、响应时间、吞吐量、以及资源利用率等方面的信息。

    2、名词解释

    • 并发用户数:并发用户数是针对服务端而言,是指在同一时刻与服务端进行交互的在线用户数量。在压力测试期间是并发用户数主要是指同时执行一个或者一系列操作的用户,或者是同时执行脚本的用户,这个并发在设置不同场景的时候并发的情况是不一样的,在实际的测试中需要根据具体的需求进行设计。
    • 最大并发用户数:最大并发用户数是指被测服务端所能承载的最多的并发用户,是系统的一个处于过载边界的描述值。主要是描述系统能够提供的最大服务能力。
    • 吞吐量:是指单位时间内系统能够处理的请求数量。常用单位时间内系统处理的用户请求数来衡量。对于交互式系统,单位时间是字节数/s、页面数/s或请求数/s,对于非交互系统,单位通常是笔(交易)/s。
    • 响应时间:响应时间分为用户响应时间和系统响应时间。用户响应时间是指单个用户所感受到的系统对其交互式操作的响应时间。用户的眼睛存在视觉暂停现象,只能在察觉0.1s以上的视觉变化,用户响应时间在此范围内就可以了。系统响应时间是计算机对用户的输入或请求作出反应的时间。压力测试一般都是站在用户角度考虑问题,因此是用户响应时间。
    • 资源利用率:描述信息系统性能能力的一系列数据指标,通常是被测服务器的CPU利用率、内存利用率、磁盘IO、网络吞吐量等。
    • 思考时间:信息系统使用者在进行业务操作的时候,发出每个请求之间的时间间隔。

    3、压力测试的分类

    压力测试是指通过逐渐增加系统负载,测试系统性

    更多相关内容
  • 思科官方出品的内部压力测试工具,一般路由器都扛不住,能抗住的路由器,都是好路由器。不要在网吧测试,我怕网管会丢了工作。
  • webSocket压力测试工具

    2018-11-07 20:53:52
    下载直接就可以测试。挺好用的webSocket压力测试工具,主要测试连接数
  • 以实际工作过程中的电商平台为实例进行细致讲解如何在实际工作中去做用jmeter工具去做压力测试,包括非常细致的测试步骤以及截图说明,跟着实例你就可以自己上手去做压力测试
  • 负载压力测试及故障

    2017-11-27 11:02:53
    负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障...
  • 接口压力测试

    2018-03-09 13:35:12
    接口压力测试接口压力测试接口压力测试接口压力测试接口压力测试接口压力测试接口压力测试接口压力测试接口压力测试接口压力测试
  • jmeter-压力测试报告-超细,Jmeter性能测试工具使用总结
  • LoadRunner压力测试报告

    热门讨论 2013-07-05 11:25:19
    要求使用 LoadRunner 进行压力测试。录制用户登录系统过程。然后分别模拟 10 个、20 个、50 个用户登录系统,分别获得响应时间、吞吐量等性能指标,并适度给出分析。 4、实验要求 (1) 撰写实验报告,包括但不限于...
  • ​​2.2 压力测试通过标准 ​​ ​​2.3 测试环境 ​​ ​​2.4 测试工具 ​​ ​​2.5 测试方案 ​​ ​​2.6 测试时间及人员安排 ​​ ​​3 测试结果与过程 ​​ ​​3.1 测试结果 ​​ ​​3.2 结论 ​​...

    目录

    1 概述

    1.1 编写目的及读者对象

    1.2 项目背景及测试目的

    2 测试内容及方案

    2.1 测试需求

    2.2 压力测试通过标准

    2.3 测试环境

    2.4 测试工具

    2.5 测试方案

    2.6 测试时间及人员安排

    3 测试结果与过程

    3.1 测试结果

    3.2 结论

    4 详细测试过程及结果

    4.1 登录

    4.2 首页(我的单据、待办、已办、已办结)

    1 概述

    1.1  编写目的及读者对象

    本次测试报告为***系统的压力做测试总结报告,目的在于总结测试结果,分析系统性能,描述系统是否符合预期的性能要求或者客户的其他需求。

    本报告的预期读者对象包括用户、测试人员、开发人员、项目管理者、质量管理人员及其他相关人员。

    1.2  项目背景及测试目的

    本次测试是针对***项目进行的压力测试。为保证系统的平稳运行,需要对系统的关键节点进行压力测试,验证现有生产环境的硬件资源和架构满足未来的业务需要。

    本次压力测试的重点在于从用户使用角度进行端对端的业务测试。

    本次压力测试的主要目的如下:

    ü 评估在并发压力下系统使用对应用服务器、数据库服务器资源消耗的情况,同时对系统关键性能进行验证

    ü 识别性能瓶颈,以对系统进行优化和调整,提出相应方案

    ü 识别容错能力,以对系统异常识别、处理进行优化和调整,增强应用的稳定性

    2 测试内容及方案

    2.1  测试需求

    本次测试范围为***系统的核心模块。为验证系统在大负荷情况下数据处理能力及承受能力,分别模拟报账系统单点登陆、以报销单为例,模拟相关操作(保存、提交)等**类种业务场景,分别从响应时间、事务成功率、CPU使用率、内存使用情况等维度进行结果分析。

    2.2  压力测试通过标准

    并发用户数

    压测时长

    90%用户相应时间

    平均响应时间(s)

    事务成功率

    每秒处理事务

    CPU占用率

    内存使用率

    5000

    15min

    小于3秒

    小于3秒

    大于99%

    小于75%

    小于75%

    10000

    15min

    小于4秒

    小于4秒

    大于99%

    小于75%

    小于75%

    15000

    15min

    小于5秒

    小于5秒

    大于99%

    小于75%

    小于76%

    2.3  测试环境

    服务器及客户端

    硬件配置

    软件配置

    应用服务器

    (*台)

    单节点配置:

    CPU:*核,内存:*GB

    (集群总)配置:

    CPU:*核,内存:*GB

    运行环境:***(Docker容器)

    操作系统: (CentOS 7.4)

    数据库服务器

    (***集群)

    (**集群)配置:

    存储:*TB (SSD)

    (**集群)配置:

    存储:*TB (SSD)

    (**集群)配置:

    存储:**TB

    操作系统: (CentOS 7.4)

    数据库:(Oracle 11g)

    测试客户端

    CPU:*核,内存:*G,存储:*GB

    操作系统:(windows2008R2)

    网络要求

    ​***M带宽

    2.4  测试工具

    LoadRunner性能测试工具、Nmon服务器指标监测工具、Postman接口测试工具、Fiddler抓包工具

    2.5  测试方案

    应用服务集群基于(**)容器部署在云平台上,应用集群由节点数可手动扩展,本次压测设置了*个节点,单个(**)容器节点的配置为*CPU、*GB内存,应用服务集群采用(**)作为第一层负载,由(**)作为第二层负载对外提供服务。

    关系数据库采用了(**)集群提供数据存储服务,应用程序通过连接池的方式与数据库建立连接。热点数据使用(**)缓存,集成接口及应用程序的异步处理采用了***的方式。

    压力测试客户端采用**个LoadRunner客户端组成压测集群,根据测试场景模拟用户用户数和并发数。

    2.6  测试时间及人员安排

    场景

    开始时间

    结束时间

    测试人员

    3 测试结果与过程

    3.1 测试结果

    各场景数据统计分析如下:

    场景

    并发用户数

    压测时长

    90%的用户响应时间(s)

    平均响应时间(s)

    事务成功率

    每秒处理事务

    成功事物数

    失败事物数

    脚本运行错误数

    3.2 结论

    基于目前的测试结果,对比我们制定的压测标准,测试)***!目前可以满足约****并发用户,大约为***—***人在线,完全**可以满足客户需求。

    4 详细测试过程及结果

    4.1  登录

    4.1.1 场景说明

    登录场景模拟用户登录系统后创建通用报销单并提交的过程。分别并发模拟100、200、500用户提交通用报销单,持续时间为15分钟,监测指标为响应时间,事务成功率,服务器cpu和内存使用情况等。

    4.1.2 测试用例

     下表为100、200、500人分别提交报销单据的测试用例:

    用例名称

    50、100人同时登录系统​

    用例编号

    001​

    测试步骤

    1、用户登录报账系统,进入主操作界面。​

    场景设计

    1、每秒启动5个虚拟用户,共生成50、100个虚拟用户;
    2、持续运行15分钟;
    3、运行结束时,每秒结束10个用户,直到所有用户结束为止。​

    关注事务

    登录​

    监控指标

    响应时间,事务成功数,服务器cpu,内存使用情况​

    预期结果

    响应时间小于5秒,事务成功率大于99%,cpu使用率小于75%,内存使用率小于75%。​

    4.1.3 测试结果

    场景

    并发用户数

    压测时长

    90%的用户响应时间(s)

    平均响应时间(s)

    事务成功率

    每秒处理事务

    成功事物数

    失败事物数

    脚本运行错误数

    登录

    100

    15min

    4.625

    2.391

    99.28%

    9.371

    14358

    103

    205

    200

    15min

    6.039

    3.753

    98.19%

    9.125

    18770

    345

    523

    500

    15 min

    12.748

    6.452

    91.18

    10.621

    36134

    3493

    5261

    (1) 100用户同时登录

    1)运行成功

    2)概要报告

    3)每秒处理事务

    4)CPU及内存

    (2) 200用户同时登录

    5)运行成功

    6)概要报告

    7)每秒处理事务

    8)CPU及内存

    (3) 500用户同时登录

    9)运行成功

    10)概要报告

    11)每秒处理事务

    12)CPU及内存

    4.2 报销单加载、保存

    4.2.1 场景说明

    用户登录系统进入系统,分别并发模拟20、50、100个用户打开报销单加载、保存单据,持续时间为15分钟,监测指标为响应时间,事务成功率,服务器cpu和内存使用情况等。

    4.2.2 测试用例

    下表为20、50、100个用户打开报销单加载、保存单据的测试用例:

    用例名称

    20、50、100人同时打开通用报销单加载、保存、提交单据​

    用例编号

    002​

    测试步骤

    1、用户登录系统,
    2、点击通用报销单新建单据(单据加载)​

    3、录入通用报销单内容,点击保存保存通用报销单​

    4、点击提交提交通用报销单​

    场景设计

    1、每秒启动5个虚拟用户,共生成***个虚拟用户;
    2、持续运行15分钟;
    3、运行结束时,每秒结束10个用户,直到所有用户结束为止。​

    关注事务

    新建单据、保存单据、提交单据​

    监控指标

    响应时间,事务成功数,服务器cpu,内存使用情况​

    预期结果

    响应时间小于5秒,事务成功率大于99%,cpu使用率小于75%,内存使用率小于75%。​

    4.2.3 测试结果

    场景

    并发用户数

    压测时长

    90%的用户响应时间(s)

    平均响应时间(s)

    事务成功率

    每秒处理事务

    成功事物数

    失败事物数

    脚本运行错误数

    报销单

    新建

    20

    10min

    3.4

    2.4

    100%

    0.276

    50

    10min

    30.3

    9

    100%

    0.554

    100

    15min

    18.7

    9.8

    99.4%

    0.521

    150

    15min

    保存

    20

    10min

    1.6

    1.2

    100%

    0.276

    50

    10min

    2.1

    1.2

    100%

    0.554

    100

    15min

    2.3

    1.4

    99.5%

    0.506

    150

    15min

    2.4

    1.5

    99.3%

    0.317

    (1) 20用户同时打开报销单加载、保存单据

    1)运行成功

    2)概要报告

    3)每秒处理事务

    4)CPU及内存

    (2) 50用户同时打开报销单加载、保存单据

    1)运行成功

    2)概要报告

    3)每秒处理事务

    4)CPU及内存

    (3) 100用户同时打开报销单加载、保存单据

    5)运行成功

    6)概要报告

    7)每秒处理事务

    8)CPU及内存

    (4) 150用户同时打开报销单加载、保存单据

    9)运行成功

    10)概要报告

    11)每秒处理事务

    12)CPU及内存

    4.3 报销单提交

    4.3.1 场景说明

    用户登录系统进入系统,分别并发模拟20、50、100个用户打开报销单提交单据,持续时间为15分钟,监测指标为响应时间,事务成功率,服务器cpu和内存使用情况等。

    4.3.2 测试用例

    下表为50、150个用户打开报销单提交单据的测试用例:

    用例名称

    50、150人同时打开报销单提交单据​

    用例编号

    002​

    测试步骤

    1、用户登录系统,
    2、点击报销单新建单据(单据加载)​

    3、录入报销单内容,点击保存保存报销单​

    4、点击提交提交通用报销单​

    场景设计

    1、每秒启动5个虚拟用户,共生成***个虚拟用户;
    2、持续运行15分钟;
    3、运行结束时,每秒结束10个用户,直到所有用户结束为止。​

    关注事务

    提交单据​

    监控指标

    响应时间,事务成功数,服务器cpu,内存使用情况​

    预期结果

    响应时间小于5秒,事务成功率大于99%,cpu使用率小于75%,内存使用率小于75%。​

    4.3.3 测试结果

    场景

    并发用户数

    压测时长

    90%的用户响应时间(s)

    平均响应时间(s)

    事务成功率

    每秒处理事务

    成功事物数

    失败事物数

    停止事物数

    通用报销单

    提交

    50

    15min

    4.441

    2.666

    99.8%

    2.666

    150

    15min

    4.5

    3.4

    99.5%

    0.137

    15min

    (5) 50用户同时打开报销单提交单据

    5)运行成功

    6)概要报告

    7)每秒处理事务

    8)CPU及内存

    (6) 150用户同时打开报销单提交单据

    13)运行成功

    14)概要报告

    15)每秒处理事务

    16)CPU及内存

    展开全文
  • 一、什么是压力测试? 软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件...

    一、什么是压力测试?

    软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。软件压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。通常要进行软件压力测试的资源包括内部内存、CPU可用性、磁盘空间和网络带宽。压力测试涵盖,性能测试,负载测试,并发测试等等,这些测试点常常交织耦合在一起。

    二、压力测试存在哪些问题?

    1、操作系统默认安装,在未做任何优化的情况下实施压力测试

    2、未考虑磁盘IO对软件的影响

    3、网络软件测试,没有考虑到TCP特点

    4、各种超时参数优化

    5、测试客户端未优化

    6、并发理解有误

    7、WEB服务器,数据库,等等服务器未优化

    如果上面几项没有做优化,压力测试数据基本没有任何参考价值,任何一项没有优化,都会导致你的压力测试数据出现偏差。下面我来逐条说明:

    (1)操作系统问题,操作系统是大众化软件,出厂优化都是面向大众,不可能为某个领域做单独优化。所以我们第一步需要优化操作系统。Linux 系统优化内核参数,Windows 系统优化注册表等等。

    (2)磁盘IO这是最容易出现瓶颈的地方,常常是CPU还没有达到极限,磁盘已经不堪重负。

    (3)TCP连接几乎所有B/S,C/S软件都是采用多线程,或者多进程技术。这种技术有个特点,开发者将程序设计为线程可自动伸缩模式,开启进程后会启动少量线程,当连接不断提高后,线程数逐渐增加,随着线程运行结束后,线程逐渐减少。这样的设计会更有效地利用硬件资源,在程序空闲时将硬件资源让给其他进程。少有软件设计为开启服务独占资源。这样测试软件做压力测试,不能一次并发很多请求,而是要采用逐渐增加的方式,否则第一次测试会有一部们并发不能及时响应,导致测试数据偏差。另外也你可以多做几次压力请求(让多线程工作起来),从第三次开始记录测试数据,忽略前面两次的测试数据。提示:另一个问题是TCP连接复用,这也是一个重要配置项。如果这项没有配置,测试出的数据也会有偏差。

    (4)超时参数在压力测试中是非常重要的参数,例如从WEB到数据库连接超时是60秒,如果有一个SQL查询超过300秒,那么后面的请求会持续排队等待,当连接数达到数据库的最大连接时,接下来的所有请求都是失败的。通常我们的WEB服务器超时不会超过30秒,有时我设置为10秒,一旦出现超时,宁可让该连接Timeout,不要让他影响整体服务。

    (5)客户端很多网络软件需要从客户端发出压力测试请求,所以客户端的优化也是必须的,否则客户端压力出不去,服务端压力进不来。

    (6)并发很多人认为并发,就是同一时间内的最大连接数,这是错误的。如果你写过多线程程序,就会发现多线程运行时又规律的。是顺序排队运行的,根本不是同时运行的。 所以并发是指,相对时间内能完成的连接总和,例如,每秒并发,每分钟并发等等,通常我们以秒为单位。我们目前使用的操作系统叫分时操作系统,这种系统的特点就是可能实现多用户,多任务。操作系统将进程排队(优先级)轮询运行,只不过这个操作太快了,使你认为多个进程在同时运行。

    (7)服务器优化主要B/S软件压力测试,WEB,缓存,数据库等等服务器,都需要逐一优化到最佳状态。

    三、为什么做压力测试?

    如果在软件设计阶段都将这些问题元素都考虑进去,同时开发阶段严格执行。那么开发出些软件几乎不用做这个劳人伤神的压力测试。

    所以在软件设计阶段就要考虑,灵活性,扩展性,可靠性与性能,还要考虑高可用与负载均衡。同时软件优化伴随开发,持续集成,持续测试,持续部署。

    四、在哪里做压力测试?

    有些软件需要封闭的环境测试,不能在共享资源的环境中做测试。所以你有必要做Vlan隔离,甚至独立的路由器与交换机在封闭网络中测试。

    五、什么时间做压力测试?

    任何时间都可能做压力测试,为什么我将“时间”重点提出呢?目前受地球自转影响,经常闰秒,你不得不考虑这个问题。

    六、压力测试过程参与部门有哪些?

    运维部门、开发部门、测试部门

    七、如何做压力测试?

    下面我们举一些例子,讲述压力测试方法,限于篇幅不可能面面俱到,我仅仅是给你提供思路。

    测试前你需要一些监控工具,事实监控服务器的资源变化。

    例如 Web 服务器压力测试,测试场景是 nginx :

    worker_processes 8; 处理器数

    worker_rlimit_nofile 65530; 允许最多打开文件数

    worker_connections 4096; 最大连接数数为

    keepalive_timeout 65; 开启复用连接

    gzip on; 压缩传输数据

    怎么做压力测试呢?你要最大化性能?还是相对性能?我们通常需要的是满足需求就好的相对性能,而不是最大化性能。为什么呢?因为要最大化性能是要做出很多配置牺牲的,例如关闭日志,禁止访问时间等等。

    按照上面的配置你的测试用例应该是,每次并发4000 请求 8000~10000 次, 你不能并发8000 请求 4000 这样测试。这是很多人常常犯的错误,所以测试者需要连接系统的配置参数,不能盲目使用数字实验。

    卓越软件评测,一家专业的第三方软件测评机构,提供各类软件测试服务,并出具合格有效的测试报告。更多测试相关内容可以关注卓越软件评测官网(https://www.zyscan.cn/),持续更新中!

    展开全文
  • JMeter 之TCP服务器并发压力测试,图文详细介绍,傻瓜式操作。
  • CPU压力测试工具

    2017-09-06 18:14:11
    CPU压力测试工具CPU压力测试工具CPU压力测试工具CPU压力测试工具CPU压力测试工具CPU压力测试工具CPU压力测试工具CPU压力测试工具
  • 路由器压力测试工具

    热门讨论 2013-08-26 11:22:02
    路由器 压力测试工具 非常好用 可以测试自己的路由器性能
  • Ab压力测试Http

    千次阅读 2022-03-25 23:13:02
    介绍压力测试工具Ab的使用

    关键字

    吞吐率(Requests per second)
    概念:服务器并发处理能力的量化描述,单位是reqs / s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。
    计算公式:总请求数/处理完成这些请求数所花费的时间,即QPS
    每秒请求数=完成请求数/测试时间

    并发连接数(并发连接数)
    概念:某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。

    并发用户数(并发用户数,并发级别)
    概念:要注意区分这个概念和并发连接数之间的区别,一个用户可能同时会产生多个会话,比如100个用户同时请求,也即连接数。

    用户平均请求等待时间(每个请求的时间)
    计算公式:处理完成所有请求数所花费的时间/(总请求数/并发用户数),即
    每个请求的时间=测试所花费的时间/(完整请求/并发级别)

    服务器平均请求等待时间(每个请求的时间:跨所有并发请求)
    计算公式:处理完成所有请求数所花费的时间/总请求数,即所花费的时间/ testsComplete请求
    可以看到,它是吞吐率的倒数。同时,等于用户平均请求等待时间/并发用户数,即
    每个请求的时间/并发级别

    一、Ab 工具介绍

          网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环。只有让服务器处在高压情况下,才能真正体现出软件、硬件等各种设置不当所暴露出的问题。
          性能测试工具目前最常见的有以下几种:ab、http_load、webbench、siege。今天我们专门来介绍ab。 ab是apache自带的压力测试工具。ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试。比如nginx、tomcat、IIS等。

    二、工具安装与使用说明

    安装工具

    yum -y install httpd-tools  //centos
    apt-get install apache2-utils //ubuntu
    ab -V #查看版本
    

    使用指令说明

    用法:ab [选项] 地址

    选项:
    Options are:
        -n requests    #执行的请求数,即一共发起多少请求。
        -c concurrency    #请求用户并发数。
        -t timelimit    #测试所进行的最大秒数。其内部隐含值是-n 50000,它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。
        -s timeout    #指定每个请求的超时时间,默认是30秒。
        -b windowsize    #指定tcp窗口的大小,单位是字节。
        -B address    #指定在发起连接时绑定的ip地址是什么。
        -p postfile    #指定要POST的文件,同时要设置-T参数。
        -u putfile    #指定要PUT的文件,同时要设置-T参数。
        -T content-type    #指定使用POST或PUT上传文本时的文本类型,默认是'text/plain'。
        -v verbosity    #设置详细模式等级。
        -w    #将结果输出到html的表中。
        -i    #使用HEAD方式代替GET发起请求。
        -y attributes    #以表格方式输出时,设置html表格tr属性。
        -z attributes    #以表格方式输出时,设置html表格th或td属性。
        -C attribute    #添加cookie,比如'Apache=1234'。(可重复)
        -H attribute    #为请求追加一个额外的头部,比如'Accept-Encoding: gzip'。(可重复)
        -A attribute    #对服务器提供BASIC认证信任。用户名和密码由一个:隔开,并以base64编码形式发送。无论服务器是否需要(即,是否发送了401认证需求代码),此字符串都会被发送。
        -P attribute    #对一个中转代理提供BASIC认证信任。用户名和密码由一个:隔开,并以base64编码形式发送。无论服务器是否需要(即, 是否发送了401认证需求代码),此字符串都会被发送。
        -X proxy:port   #指定代理服务器的IP和端口。
        -V              #打印版本信息。
        -k              #启用HTTP KeepAlive功能,即在一个HTTP会话中执行多个请求。默认时,不启用KeepAlive功能。
        -d              #不显示"percentage served within XX [ms] table"的消息(为以前的版本提供支持)。
        -q              #如果处理的请求数大于150,ab每处理大约10%或者100个请求时,会在stderr输出一个进度计数。此-q标记可以抑制这些信息。
        -g filename     #把所有测试结果写入一个'gnuplot'或者TSV(以Tab分隔的)文件。此文件可以方便地导入到Gnuplot,IDL,Mathematica,Igor甚至Excel中。其中的第一行为标题。
        -e filename     #产生一个以逗号分隔的(CSV)文件,其中包含了处理每个相应百分比的请求所需要(从1%到100%)的相应百分比的(以微妙为单位)时间。由于这种格式已经“二进制化”,所以比'gnuplot'格式更有用。
        -r              #当收到错误时不要退出。
        -h              #输出帮助信息
        -Z ciphersuite  指定SSL/TLS密码套件
        -f protocol     指定SSL/TLS协议(SSL3, TLS1, TLS1.1, TLS1.2 or ALL)
    

    三、测试案例

    说明:默认大家已经配置好Client/ Server 端的TCP 优化,以及系统打开最大文件描述符的数量
    -k 使用长连接可以大幅提升性能

    ab -k -c 20000 -n 100000 -r -s 2 http://127.0.0.1:8080/
    

    四、测试报告

    This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
    Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
    Licensed to The Apache Software Foundation, http://www.apache.org/
    
    Benchmarking 127.0.0.1 (be patient)
    Completed 10000 requests
    Completed 20000 requests
    Completed 30000 requests
    Completed 40000 requests
    Completed 50000 requests
    Completed 60000 requests
    Completed 70000 requests
    Completed 80000 requests
    Completed 90000 requests
    Completed 100000 requests
    Finished 100000 requests
    
    
    Server Software:        nginx/1.20.2  #服务器名
    Server Hostname:        127.0.0.1 #请求的URL
    Server Port:            8080  #端口号
    
    Document Path:          /  #请求路径
    Document Length:        612 bytes #响应数据长度
    
    Concurrency Level:      20000  #并发数,我们自己设置的-c参数
    Time taken for tests:   6.553 seconds  #请求完成时间
    Complete requests:      100000   #完成请求数
    Failed requests:        77600   #错误请求数
       (Connect: 0, Receive: 25782, Length: 26036, Exceptions: 25782)
    Write errors:           0 #写入错误次数
    Non-2xx responses:      256  #接收到的HTTP响应数据的头信息中含有2XX以外的状态码请求数
    Keep-Alive requests:    75109 
    Total transferred:      64280484 bytes  #请求长度总和
    HTML transferred:       46264776 bytes  #html响应总长度(去除了响应头的长度)
    Requests per second:    15259.55 [#/sec] (mean)  #每秒服务器处理的请求数(QPS)
    Time per request:       1310.654 [ms] (mean)  #用户平均请求等待时间
    Time per request:       0.066 [ms] (mean, across all concurrent requests)  #服务器平均处理时间
    Transfer rate:          9579.02 [Kbytes/sec] received  #带宽传输速度
    
    Connection Times (ms) #连接处理时间
                  min  mean[+/-sd] median   max
    Connect:        0    9  62.2      0    1007
    Processing:    51  907 1303.9    151    3465
    Waiting:        0  125 142.0    134    3392
    Total:         60  916 1303.0    153    4248
    
    Percentage of the requests served within a certain time (ms)
      50%    153 #50%的请求在153ms内返回
      66%    217
      75%    544
      80%   3028
      90%   3195
      95%   3349
      98%   3391
      99%   3397 #99%的请求在3397ms内返回
     100%   4248 (longest request) 
    

    Failed requests: 77600 #错误请求数
    (Connect: 0, Receive: 25782, Length: 26036, Exceptions: 25782)

    Receive:当客户端connect成功后,并且服务端成功accept,并且没有开始recv,然后服务端close掉socket,就产生这个错误(平时多见于服务端主动close掉客户端连接,即客户端表现为Connection reset by peer)

    Length:即读到的报文长度不等于http头的content-length值(c->bread != doclen)。当读到的报文长度c->bread等于0时,并且apr_socket_recv返回APR_EOF,意味着服务端成功accept,并且已经开始接收(可能已经接收完整个报文,也可能没有),但因业务繁忙,来不及处理已经接收的报文,当服务端发现报文已经超过设定的过期时间,就close掉socket。

    Exceptions:多见于网络发生错误,导致监听的事件出现APR_POLLERR,分以下两种情况:

          err_except发生在revc阶段,即出现事件(APR_POLLERR<指定的文件描述符发生错误>或者APR_POLLNVAL<指定的文件描述符非法>),一般常见是POLLERR。在读取数据阶段出现Resource temporarily unavailable,服务端close掉socket,read_connection后会产生APR_POLLERR事件,导致err_except+1。上面的Length 错误不一定会引发err_except(此问题还未解决)。

          err_except发生在connect阶段,即出现事件(APR_POLLERR),并且错误描述为Operation now in progress,并且所有的并发socket都已经建立(destsa->next==0),导致err_except+1。这个貌似不太合理。对于定长网页的访问,出现Failed requests多由于网络,或者服务端主动行为造成的。

    展开全文
  • jmeter压力测试

    千次阅读 2022-04-26 19:56:16
    一、Jmeter数据库压力测试 1.1.先配置jdbc(数据库连接)驱动 1、启动jmeter,打开界面工具,添加一个线程组 2、添加一个JDBC Connection Configuration,连接池配置文件。右键线程组【添加】--【配置元件】- -...
  • 软件系统压力测试报告文档

    热门讨论 2014-03-11 16:59:26
    软件系统压力测试报告文档
  •  2、目的:在不挂系统的情况下进行测试,使系统在最大压力下正常运行。 获取系统指标。  3、方法:持续增加请求压力,直到服务器的某个资源项达到饱和(如CPU使用率达到90%)或某个指标达到安全临界值(如监控报警...
  • windows下web压力测试工具

    热门讨论 2013-10-31 02:26:09
    windows平台下web压力测试工具,有详细使用教程的。不清楚的话,可以留言给我!
  • 性能测试和压力测试

    万次阅读 2022-01-10 13:36:03
    性能测试: 主要是通过自动化的测试工具模拟多种正常、峰值...在压力测试中,可以采取两种不同的压力情况——用户量压力测试或数据量压力测试。进行压力测试主要有希望找到两种错误类型:内存泄露、并发与同步。 ...
  • web并发&压力测试工具http_loadWin32

    热门讨论 2014-07-11 18:55:35
    win版压力测试工具
  • Monkey压力测试

    千次阅读 2021-12-01 14:24:58
    Monkey可以通过发送伪随机事件流来测试设备上的程序的稳定性,通常用于APP压力测试,验证APP是否会发生崩溃 2.monkey命令启动方式 ①使用命令行,输入adb shell monkey {+命令参数}来进行测试 ②可以使用adb ...
  • 压力测试流程

    千次阅读 2022-02-18 22:05:17
    一、压测流程 可参照上篇压测对抗流程 二、压测需求 需要明确需要压测的环境 需要压测的接口,其中包含接口的入参 需要明确接口的预计qps ...1.根据需要测试的接口,决定需要部署哪些...4.根据需要测试的接口,决定
  • 压力测试介绍

    千次阅读 2020-07-30 15:49:16
    1.性能测试、压力测试、负载测试的区别 性能测试 负载测试、容量测试、压力测试(强度测试)都属于性能测试,性能测试是指在给定条件基准的前提下能达到的运行程度,测试软件在系统中的运行性能,度量系统与预定义...
  • 性能测试、负载测试、压力测试、稳定性测试? 什么是性能测试(performance testing)? 答案:系统在一定的压力情况下,查看cpu,内存,磁盘,网络带宽,TPS、响应时间、并发用户数、等各项指标,通过模拟生产...
  • 关于Jmeter压力测试

    千次阅读 2021-11-22 17:08:30
    压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常...
  • 该文档写作目的在于描述一个基于Locust实现的压力测试,文中详细地描述了如何利用locustfile.py文件定义期望达成的测试用例,并利用Locust对目标站点进行并发压力测试
  • siege压力测试windows版

    千次下载 热门讨论 2013-09-12 13:41:24
    一款开源的压力测试工具,可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。 使用方法 siege -c 200 -r 10 -f example.url -c是并发量,-r...
  • 压力测试工具

    万次阅读 多人点赞 2018-12-20 16:06:28
    目录 1 性能测试... 2 2 压力测试(Stress Test)... 2 2.1 网站测试... 2 2.2 系统测试要求... 3 3 测试工具... 3 3.1 Webbench. 4 3.1.1 Ubuntu 下载安装... 5 3.1.2 ...
  • 版本为LoadRunner12.55 1.前期准备工作 1.1录制脚本并实现... 压力测试:系统达到一定饱和度时,系统处理业务的能力 负载测试:找到系统最大的负载能力(通过给系统不断的施压达到饱和状态不能加压为止) ...
  • 压力测试-Jmeter自动化测试教程

    千次阅读 2022-04-16 11:24:11
    基于Jmeter的自动化测试教程

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 337,851
精华内容 135,140
关键字:

压力测试