Jmeter对HTTP请求压力测试、并发测试
最近公司需要开发一个简单的报名系统,供外网用户提供报名服务,由于我们公司是个初创的微型公司,开发人员都是刚毕业不久,开发经验相当缺乏。
对于服务器性能测试这块的经验更是少得可以忽略。迫使不得不让我们去尝试了解测试的知识。
首先我们的需求场景如下:
服务器硬件:(只有一台)
系统:Windows 2003
WebServer:Tomcat 7.0
Jdk:7.0
CPU:8核 2.9GHz两个
内存:16G
报名应用系统:只需要向外提供一个报名和找回报名号的接口。
我们需要:测试服务器能同时承受多少条HTTP请求。
通过各种百度后发现LoadRunner是好,但是使用起来短时间内比较难上手,然后就找到了Jmeter。
一、运行Jmeter:
首先在网上下载一个jmeter,我下载的是2.3.4版本,其他版本同理
通过解压后得到一个tgz格式的文件,然后再继续解压得到一个文件夹如下图:
打开文件夹运行bin目录下的 jmeter.bat即可进入jmeter的主界面,如图:
假如运行 jmeter.bat报错不能正常打开,那就要检查本机是否有安装JDK,如果能保证安装好JDK和配置好环境变量后,可以尝试直接运行
bin目录下的ApacheJMeter.jar,我是打不开jmeter.bat的提示我创建不了JAVA虚拟机,但是运行ApacheJMeter.jar却能正常进入主界面,不
能正常运行的可以尝试一下这种办法。
二、创建一个线程组
三、设置线程组参数
四、创建HTTP请求
五、配置HTTP请求
六、添加运行结果分析监听器
七、聚合报告
八、图形结果
九、总结
我们按照如上步骤设置好参数后,对应用进行了并发测试(测试时保持了测试机器和服务器同一个内网网段),第一次模拟100个用户并发请求(请求需要通过查询
具有1000条数据的数据表)持续执行10分钟,偏移保持在100以下,第二次模拟200个用户,偏移还是保持在100以下,第三次模拟350个用户时,偏移则保持在100左右。
而且服务器CPU状态良好,使用率一直保持在20%左右,最高不超过25%。为什么服务器CPU的使用率没有达到很高的情况下,而偏移会越来越高呢,我猜测可能跟Tomcat
没进行优化有关。最后我们认为该应用的并发量大概是在350-400之间。
Jmeter对HTTP请求压力测试、并发测试的更多相关文章
- Jmeter对HTTP请求压力测试、并发测试的简单使用方法
对于服务器性能测试这块的经验更是少得可以忽略.迫使不得不让我们去尝试了解测试的知识. 首先我们的需求场景如下: 服务器硬件:(只有一台) 系统:Windows 2003 WebServer:Tomca ...
- Loadrunner 进行压力测试 并发测试
问题背景: 今年公司项目进行Saas化转型,在中间遇到很多问题,其中之一就是 Saas化后多租户的性能 和 并发问题.公司让我来调研和重现问题,通过调研总结了一些经验教训,分享给大家. 环境: Loa ...
- jmeter使用csv传参进行并发测试验证
1.获取到注册接口,添加HTTP信息头管理器.HTTP请求,设置好入参,且检查使用csv文件传参的入参 2.创建csv文件,写入需要传的入参 3.添加CSV Data Set Config 设置配置 ...
- JMeter多个请求按照比例并发的几种方式
一.需求 在压测的过程中,为了能够压测整个链路,通常需要多个接口进行并发, 每个接口的请求比例不尽相同. 比如此时此刻,我在写博客,很多人在浏览博客,或者点赞.评论博客等等等,这些行为占比是不同的. ...
- JMeter使用jar进行压力测试
最近需要对改造的redis缓存接口做压力测试,使用了开源压力测试工具JMeter,分享一下自己的使用经验,希望能对需要进行压力测试的开发同学有所帮助. JMeter介绍 JMeter是Apache软件 ...
- ab和jmeter进行GET/POST压力测试的使用心得和比较
引言: 互联网服务压测是非常重要的评价方法,ab,webbench,jmeter等都是业界流行的测试工具,ab和webbench作为shell模式下轻量级的测试工具,jmeter则作为有GUI界面的更 ...
- Windows和Linux的Jmeter分布式集群压力测试
Windows的Jmeter分布式集群压力测试 原文:https://blog.csdn.net/cyjs1988/article/details/80267475 在使用Jmeter进行性能测试时, ...
- JMeter (3) —— JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial)
JMeter (3) -- JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial) 主要内容 JMeter录制脚本并进行压力测试用户登陆场景,并以CAS SSO单点 ...
- 使用Jmeter进行接口测试和压力测试的配置和使用
1. Jmeter简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. JMeter 可 ...
随机推荐
- iOS开发苹果内购的介绍与实现
1.iOS开发苹果内购的介绍 1.1 介绍 苹果规定,凡是虚拟的物品(例如:QQ音乐的乐币)进行交易时,都必须走苹果的内购通道,苹果要收取大约30%的抽成,所以不允许接入第三方的支付方式(微信.支付宝 ...
- Docker入门笔记(1)
Docker入门笔记(1) 1.安装Docker yum -y install docker-ce 2.查看Docker版本 [root@localhost ~]# docker -v Docker ...
- zookeeper伪分布集群配置
1.上传tar文件zookeeper-3.4.12.tar.gz 2.解压zookeeper-3.4.12.tar.gz [root@localhost zookeeper]# .tar.gz 3.重 ...
- html5在手机熄屏后倒计时会出现延迟情况
今天开发了一个手机端的倒计时,然后同事说出现了Bug,怎么回事呢?Bug很简单,就是在手机返回主界面或者熄屏后倒计时会暂停在熄屏前的时间(注意时间是页面加载时获取的服务器的时间),问题很简单,知道问题 ...
- pandas中获取数据框的行、列数
获取数据框的行.列数 # 获取行数 df.shape[0] # 获取行数 len(df) # 获取列数 df.shape[1]
- cuda9.0 中不存在libnppi.so
编译一个caffe版本,报错找不到 -lnppi 发现使用打是cuda9.0, 但是cuda9.0 中不存在libnppi.so. 只好换成cuda8.0.
- (转)haproxy启动故障:Starting proxy:cannot bind socke
haproxy启动时提示失败: [ALERT] 164/110030 (11606) : Starting proxy linuxyw.com: cannot bind socket 这个问题,其实就 ...
- Python基础(4) - 变量
Python 命名规则: 变量名必须是字母或者_开头. 变量名的其他部分可以是字母,_或者数字. Python是大小写敏感的. 以下划线开头的标识符是有特殊意义: 以单下划线开头(_foo)的代表不能 ...
- .NET加密技术概述
微软.NET 的System.Security.Cryptography中的类实现了各种具体的加密算法和技术.这些类,有一些是非托管 Microsoft CryptoAPI 的包装,而另一些则是纯粹的 ...
- vue中添加swiper轮播插件
网上找了很多,最后还是官网最完整. https://github.com/surmon-china/vue-awesome-swiper 安装: 1.npm install vue-awesome-s ...