最近公司需要开发一个简单的报名系统,供外网用户提供报名服务,由于我们公司是个初创的微型公司,开发人员都是刚毕业不久,开发经验相当缺乏。

对于服务器性能测试这块的经验更是少得可以忽略。迫使不得不让我们去尝试了解测试的知识。

首先我们的需求场景如下:

服务器硬件:(只有一台)

系统: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请求压力测试、并发测试的更多相关文章

  1. Jmeter对HTTP请求压力测试、并发测试的简单使用方法

    对于服务器性能测试这块的经验更是少得可以忽略.迫使不得不让我们去尝试了解测试的知识. 首先我们的需求场景如下: 服务器硬件:(只有一台) 系统:Windows 2003 WebServer:Tomca ...

  2. Loadrunner 进行压力测试 并发测试

    问题背景: 今年公司项目进行Saas化转型,在中间遇到很多问题,其中之一就是 Saas化后多租户的性能 和 并发问题.公司让我来调研和重现问题,通过调研总结了一些经验教训,分享给大家. 环境: Loa ...

  3. jmeter使用csv传参进行并发测试验证

    1.获取到注册接口,添加HTTP信息头管理器.HTTP请求,设置好入参,且检查使用csv文件传参的入参 2.创建csv文件,写入需要传的入参 3.添加CSV Data Set Config 设置配置 ...

  4. JMeter多个请求按照比例并发的几种方式

    一.需求 在压测的过程中,为了能够压测整个链路,通常需要多个接口进行并发, 每个接口的请求比例不尽相同. 比如此时此刻,我在写博客,很多人在浏览博客,或者点赞.评论博客等等等,这些行为占比是不同的. ...

  5. JMeter使用jar进行压力测试

    最近需要对改造的redis缓存接口做压力测试,使用了开源压力测试工具JMeter,分享一下自己的使用经验,希望能对需要进行压力测试的开发同学有所帮助. JMeter介绍 JMeter是Apache软件 ...

  6. ab和jmeter进行GET/POST压力测试的使用心得和比较

    引言: 互联网服务压测是非常重要的评价方法,ab,webbench,jmeter等都是业界流行的测试工具,ab和webbench作为shell模式下轻量级的测试工具,jmeter则作为有GUI界面的更 ...

  7. Windows和Linux的Jmeter分布式集群压力测试

    Windows的Jmeter分布式集群压力测试 原文:https://blog.csdn.net/cyjs1988/article/details/80267475 在使用Jmeter进行性能测试时, ...

  8. JMeter (3) —— JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial)

    JMeter (3) -- JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial) 主要内容 JMeter录制脚本并进行压力测试用户登陆场景,并以CAS SSO单点 ...

  9. 使用Jmeter进行接口测试和压力测试的配置和使用

    1. Jmeter简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. JMeter 可 ...

随机推荐

  1. iOS开发苹果内购的介绍与实现

    1.iOS开发苹果内购的介绍 1.1 介绍 苹果规定,凡是虚拟的物品(例如:QQ音乐的乐币)进行交易时,都必须走苹果的内购通道,苹果要收取大约30%的抽成,所以不允许接入第三方的支付方式(微信.支付宝 ...

  2. Docker入门笔记(1)

    Docker入门笔记(1) 1.安装Docker yum -y install docker-ce 2.查看Docker版本 [root@localhost ~]# docker -v Docker ...

  3. zookeeper伪分布集群配置

    1.上传tar文件zookeeper-3.4.12.tar.gz 2.解压zookeeper-3.4.12.tar.gz [root@localhost zookeeper]# .tar.gz 3.重 ...

  4. html5在手机熄屏后倒计时会出现延迟情况

    今天开发了一个手机端的倒计时,然后同事说出现了Bug,怎么回事呢?Bug很简单,就是在手机返回主界面或者熄屏后倒计时会暂停在熄屏前的时间(注意时间是页面加载时获取的服务器的时间),问题很简单,知道问题 ...

  5. pandas中获取数据框的行、列数

    获取数据框的行.列数 # 获取行数 df.shape[0] # 获取行数 len(df) # 获取列数 df.shape[1]

  6. cuda9.0 中不存在libnppi.so

    编译一个caffe版本,报错找不到 -lnppi 发现使用打是cuda9.0, 但是cuda9.0 中不存在libnppi.so. 只好换成cuda8.0.

  7. (转)haproxy启动故障:Starting proxy:cannot bind socke

    haproxy启动时提示失败: [ALERT] 164/110030 (11606) : Starting proxy linuxyw.com: cannot bind socket 这个问题,其实就 ...

  8. Python基础(4) - 变量

    Python 命名规则: 变量名必须是字母或者_开头. 变量名的其他部分可以是字母,_或者数字. Python是大小写敏感的. 以下划线开头的标识符是有特殊意义: 以单下划线开头(_foo)的代表不能 ...

  9. .NET加密技术概述

    微软.NET 的System.Security.Cryptography中的类实现了各种具体的加密算法和技术.这些类,有一些是非托管 Microsoft CryptoAPI 的包装,而另一些则是纯粹的 ...

  10. vue中添加swiper轮播插件

    网上找了很多,最后还是官网最完整. https://github.com/surmon-china/vue-awesome-swiper 安装: 1.npm install vue-awesome-s ...