压力测试

Jmeter压力测试

谁说胖子不能爱 提交于 2020-01-08 12:05:29
压力测试查看结果的几个指标: 1.tps是每秒钟处理的请求数,也就是指服务器的处理能力,tps越高说明服务器处理能力越好。 2.响应时间,也就是每个请求的处理时间 3.并发用户数,也就是多少并发 Jmeter压力测试:    Linux下运行Jmeter压力测试:   1.先把jmeter上传到linux上   2.把脚本上传到linux上   3.linux下运行jmeter是在jmeter的bin目录下的jmeter.sh这个shell脚本。     sh jmeter.sh -n -t a.jmx -l res.jtl (-n 代表以没有图形化界面启动,-t代表后面是测试脚本,a.jmx也就是我们做好的jmeter脚本,-l代表测试结果,res.jtl就是测试结果文件,,查看结果的化,在查看结果树视图中导入这个res.jtl就可以查看到测试结果了) Jmeter添加负载机:   确保这几台压力机都能ping通   1.要在其他的电脑上启动jmeter-sever   2.修改你的jmeter配置文件,在remote_hosts里面加上压力机的ip和端口号即可   remote_hosts=localhost:1099,192.168.3.218:1099   3.启动的时候要用远程全部启动 PS:如果脚本里有参数化文件的话,那么在其他的压力机上同样位置有的有一个同样的文件。

linux下压力测试命令ab

不羁的心 提交于 2020-01-07 01:07:09
  ab命令被集成到了httpd服务器中,所以想要使用ab命令需要先安装httpd服务。yum -y install httpd ab命令的使用方法和常用选项 ab [选项] [http[s]://]hostname[:port]/path 常用选项:   -n requests 在测试会话中所执行的请求总个数,默认一个   -c concurrency 一次产生的请求个数,默认一个 例   测试会话总共产生1000个请求,一次生成,压力测试    [root@youxi2 ~]# ab -n 1000 -c 1000 http: //192.168.5.102/index.html 来源: https://www.cnblogs.com/zrh-960906/p/12159203.html

使用ab对nginx进行压力测试

我只是一个虾纸丫 提交于 2020-01-01 09:01:17
https://www.cnblogs.com/lujion/p/6179935.html 使用ab对nginx进行压力测试 ubuntu安装ab apt-get install apache2-utils centos安装ab yum install httpd-tools 测试之前需要准备一个简单的html、一个php、一个图片文件。 ab -kc 1000 -n 1000 http://localhost/ab.html 这个指令会使用1000个并发,进行连接1000次。结果如下 比如 Requests per second: 16.54 [#/sec] (mean) Time per request: 60443.585 [ms] (mean) Requests per second: 16.54 [#/sec] (mean) 表示当前测试的服务器每秒可以处理16.54个静态html的请求事务,后面的mean表示平均。这个数值表示当前机器的整体性能,值越大越好。 普通的测试,使用-c -n参数配合就可以完成任务 格式: ./ab [options] [http://]hostname[:port]/path 参数: -n 测试的总请求数。默认时,仅执行一个请求 -c 一次并发请求个数。默认是一次一个。 -H 添加请求头,例如 ‘Accept-Encoding: gzip’

压力测试总结

江枫思渺然 提交于 2020-01-01 09:00:14
(1) 保证测试机与被测机在同一网段。如果在不同网段,可能会存在网络瓶颈,导致压力测试达不到指定的并发量。 (2) 压力测试时,要同时观察测试机(压测工具 siege 或 ab 所在的机器)和被测机的负载情况( CPU ,内存,网络带宽等)。如果有数据库或缓存,还要观察数据库服务器和缓存服务器的负载情况。 (3) 压力测试时,测试机的负载不能过高,以免影响测试工具发出的请求数量和并发度。被测机的负载要达到一定程度, CPU ,内存,网络带宽至少要有一项接近满负荷状态。(例如, CPU 使用率达到 50% 以上,甚至接近 100% )。 (4) 对于 mysql 数据库,可以在命令行下使用 show processlist 命令查看同一时间的连接数,以及是否存在锁定现象。 (5) 对于 siege ,在设置 -b 选项,并且未设置 -v 选项的情况下,并发度设置为 100 左右即可(测试组给的经验值)。 (6) 为了减少不确定因素对结果的影响,每次压力测试都要达到一定的数量,并持续一定的时间,例如,持续压测 20-30 分钟。 (7) 压力测试不能只关注 QPS ,还要注意查看其它指标。 (8) 为了排除个别因素对性能的影响,可以适当地修改一些设置信息,通过对比修过前后的测试结果,分析评估单一因素对性能的影响。 (9) xdebug(xhprof) 会影响性能,压力测试时要去掉

《沙盘模拟系列》JVM如何调优

♀尐吖头ヾ 提交于 2019-12-29 14:39:52
纸上得来终觉浅 绝知此事要躬行 我所在的公司基本上是没有机会进行JVM参数调优的,但是如果有些东西自己不亲身经历一下,看再多的理论知识也只能算是纸上谈兵,真正碰到问题的时候还是不知道该怎么分析。所以就自己制造一些问题然后看其现象,利用所学的知识事前推测,看现象是不是和自己推测的一样。这样不仅对自己所学的知识又是一次巩固,而且也能锻炼自己解决问题的能力(虽然问题是自己制造的)。 其实在写这篇文章之前已经看过好好几遍关于JVM调优那一块的内容,无论是书还是博客,但是大都看完了感觉自己懂了,但是真正自己模拟操作的时候又觉得什么都不会,但是经过自己模拟一遍以后发现能够将之前的知识都关联起来,形成了一个面,感觉理解有深了一点。这里强调一下 希望大家看完以后,能够自己在机器上模拟一遍,采用不同的参数然后自己猜想结果并验证 工具准备 工欲善其事,必先利其器。在分析JVM之前我们需要先将工具准备一下,一个是可视化的垃圾回收工具,另一个是压测的工具。 GcViews安装 将 GcViews 代码从Git上下载下来 github地址 在项目的根目录中执行命令 mvn clean install 然后发现在根目录中生成了 target 文件夹,在里面可以找到 gcviewer-1.37-SNAPSHOT.jar 文件 JMeter安装 Apache JMeter是一个开源的压力测试具

性能测试的类型

て烟熏妆下的殇ゞ 提交于 2019-12-28 20:45:10
性能测试的类型 我们在做性能测试的时候一般都是笼统的称为性能测试,其实性能测试分为多个类型:负载测试,压力测试,性能测试,基准测试,并发测试,配置测试,稳定性测试,失效恢复测试。下面就详细说说这些名词之间的区别和特点。 1、负载测试 负载测试是对被测系统不断增加压力(即用户并发数),直至性能指标超过预期或者某项资源使用达到饱和状态(就是加压到系统崩溃)。重点观察系统正常运行的最大值时候的一些数据和资源使用。观察程序、网络、服务器、还是数据库等哪个方面存在瓶颈。 目的:发现系统处理能力的极限。找出问题所在,做这个就是为了发现系统是否还有隐藏的能力。用来改进调优。 2、压力测试 压力测试是系统在一定饱和状态下,例如cpu、内存、磁盘I/O在饱和使用情况下,系统能够处理能力,以及系统是否会出现错误。(可以参考负载测试情况) 目的:该方法通过增加压力,使系统资源使用保持在较高的压力下,检验此时应用的表现,重点在于有误出错信息产生,系统对应用的响应时间等。 3、性能测试 性能测试一般是根据模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。也可以说是在特定的运行条件下验证系统的能力状态。比如做100个并发,持续10分钟等。查看平均响应时间和TPS是否满足生产的指标或者是设计的指标。评估正常使用的功能。不是破坏性的。   目的

压力测试 webbench

醉酒当歌 提交于 2019-12-26 12:25:43
原文 webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好用,安装使用也特别方便,并且非常小。 主要是 -t 参数用着比较爽,下面参考了张宴的文章:   1、适用系统:Linux   2、编译安装: [root@hexuweb102 ~]$wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz [root@hexuweb102 ~]$tar zxvf webbench-1.5.tar.gz [root@hexuweb102 ~]$cd webbench-1.5 [root@hexuweb102 ~]$make && make install   3、使用: [root@hexuweb102 webbench-1.5]$ webbench --help webbench [option]... URL -f|--force Don't wait for reply from server. -r|--reload Send reload request - Pragma: no-cache. -t|--time <sec> Run benchmark for <sec> seconds. Default 30. -p|--proxy <server

Jmeter命令行执行压力测试

青春壹個敷衍的年華 提交于 2019-12-23 02:46:10
●前言 使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资 第一步:执行命令 先在Jmeter中把要测试的请求配置好,然后去cmd中运行脚本。我这里只用了10条做测试,大家可以调多一点。 命令:jmeter -n -t 口令红包并发测试.jmx -l test.jtl 绝对路径:jmeter -n -t c:\口令红包并发测试.jmx -l c:\test.jtl JMeter 默认去当前bin目录下寻找脚本文件,并把日志记录在当前目录。比如你在 E:\Jmeter\apache-jmeter-4.0\bin>目录下执行以上命令,JMeter 会去该目录下寻找 口令红包并发测试.jmx脚本并把执行结果放在该目录。 如果你的脚本在其他目录,而且想要把执行结果放在另外文件夹,需要使用绝对路径告诉 JMeter 第二步:查看报告 第一种方法: 上述的命令有要求测试结果保存到Jmeter bin目录中,如果需要可以在GUI模式下查看测试报告。 1、打开Jmeter GUI界面 2、在测试计划下,添加对应的测试报告元件,想看哪个就可以添加哪个报告,如:聚合报告、查看结果树、Summary Report测试报告 3、在所有数据写入一个文件,浏览中选择对应的日志文件 4、下面就会有对应的表格展示,具体见下图 第二种方法(生成web报告): 命令:jmeter

使用 JMeter 进行压力测试

五迷三道 提交于 2019-12-22 01:51:35
一.前言 压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常重要的步骤,下面我带大家来使用一款压力测试工具JMeter。 二.关于JMeter Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。 Apache jmeter 可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java 对象,数据库和查询,FTP服务器等等)的性能进行测试。它可以用于对服务器、网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。 官网: http:

loadrunner11压力测试自学成才!嘎嘎

丶灬走出姿态 提交于 2019-12-17 15:28:29
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在这样要先吐槽一下loadrunner12版本,在官网下载了社区版,一看是免费版,太棒了,赶紧下载,果然不用购买,测10虚拟用户并发,ok。测100的并发,我晕,还是要购买的。坑爹啊!还用下载个loadrunner11吧,然后破解着用吧 安装完loadrunner11后,打开loadrunner,可以看到左侧三个菜单,就靠这三个最重要的功能了。看图 第一步:编写压测脚本 点击“Create/Edit Scripts”进入录制脚本的界面,点击下图中第一个选中的红框的按钮,新增一个脚本。接下来全是图啊。 到这里,因为我在录制脚本时什么也没有操作,所以脚本中action代码段中什么代码也没有,需要我们自己写了,在脚本中写入以下代码: Action() { web_submit_data("test", "Action=http://localhost:8080/test/testAction", "Method=POST", "RecContentType=application/json", "Referer=http://localhost:8080/test/index.html", "Snapshot=t4.inf", "Mode=HTML", ITEMDATA, "Name=RequestData",