首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

使用JMeter对网站和数据库进行压力测试

前言 表面看来,JMeter与本系列课程似乎关系不大,但实际上在后面的很多场景中起着重要作用:如何获知修改了某些代码或者设置之后系统性能是提升了还是下降了呢?商业的压力测试工具LoadRunner确实很高大上,但是据说费用也不便宜且体积也不小,而目前最高版本的开源免费压力测试工具JMeter3.2压缩包体积才不到53M,而且对于开发人员而非专业测试人员来说,JMeter提供的测试功能已经够强大了。要完整地介绍JMeter,即使把JMeter自带的文档翻译成中文就是一本厚厚的书了。但是在本篇只讲述如何利用JMeter来对Web网站和数据库进行压力测试,因为测试场景的复杂性,本篇实例讲述基于csv文件的参数化测试。 JMeter提供了对不同的协议、服务器及应用的测试支持,如下: Web – 各种开发语言开发出的网站,比如ASP/ASP.NET/JSP/PHP/Python/Perl等 SOAP / REST Webservices FTP Database via JDBC(基于JDBC对数据库进行压力测试) LDAP Message-oriented middleware (MOM) via JMS Mail - SMTP(S), POP3(S) and IMAP(S) Native commands or shell scripts TCP Java Objects 还是那句话:本篇只讲述对Web网站和基于JDBC对数据库进行压力测试。 软件准备 JMeter3.2:为保持与本文有比较好的对照,建议从官网下载3.2版本,下载地址:http://jmeter.apache.org/[preferred]/jmeter/binaries/apache-jmeter-3.2.zip 此软件解压后即可使用。 Tomcat8.5:本实例中的关于Web网站的压力测试都是基于Tomcat8.5的,下载地址:http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.15/bin/apache-tomcat-8.5.15.tar.gz 如果嫌麻烦,可以直接在上一篇《开发人员学Linux(3):CentOS7中安装JDK8和Tomcat8》的环境中进行。 MySQL Community Server5.7:本篇中将以MySQL为例讲述如何对数据库进行压力测试,实际上本篇对MySQL版本没有要求,但后来今后,还是建议下载5.7版本,下载地址:https://dev.mysql.com/downloads/mysql/,同时请下载MySQL的JDBC驱动。 注意:本篇中JMeter在Windows下运行,MySQL数据库及Tomcat服务器均在CentOS7下运行。 使用JMeter对一般性网站进行压力测试 为便于演示,这里以上一篇《开发人员学Linux(3):CentOS7中安装JDK8和Tomcat8》中搭建起来的环境进行压力测试,本人的虚拟机支持桥接模式,IP地址为:192.168.60.198,在Tomcat中有一个简单的提交表单,网址是:http://192.168.60.198:8080/examples/servlets/servlet/RequestParamExample,页面如下图所示:

05

关于性能测试的这点事,干货来袭「建议收藏」

答:有些同事在测试几轮之后,功能稳定了开始介入性能测试,这时才发现性能根本支撑不了预期值。这个时候开发再回头进行系统调优,如果事先选的架构能支撑就好,如果不能达不到预期值,后面讨论或者请教高手发现原先的架构缺陷,再调整架构代价就非常大。基本导致前期的功能测试成果作废。其实各个阶段都有事情做。需求阶段可以整理,评审出性能需求,评审需求可行性时就考虑好数据量和用户量。设计阶段–对预估的需求做设计,举个例子。背景:我们现在使用的是mysql数据库(公司去oracle化),我们要从一个5000W的一个数据表的6个不同查询维度查询数据,比如说城市、行业、地址类型、爱好、性别、时间范围。这样对于mysql的查询常见的优化设计可能是分表、建立索引,但,对于这个场景就不好处理了。数据耦合强,没有办法分表。索引,组合索引太多。后面的处理办法是用mongodb、nosql的方法解决。对于编码和测试阶段可以这样去分不同阶段做不同事情。

02

机器人大闹光棍节:直击双11京东全链路军演ForceBot

常听说各大电商需要通宵备战双十一。购物大趴过后,人们摩挲着光秃秃的手腕,不禁在想,这些口口声声说在为我们保驾护航的家伙,那天究竟干了什么?为此,我们提前走访了京东双11作战指挥部,先为大家带来这支神秘之师战前演练的实况! 心里要有点数 什么是全链路压测? 全链路压测可以理解为网络链路 + 系统链路。网络链路是用户到机房的各个网络路由延迟环境;系统链路是各个系统之间的内部调用关系和强依赖性。 为什么要做全链路压测? 电商大促期间存在不同于日常流量场景的高流量冲击,为了应对大促流量场景,保证大促期间用户可以

06

一个完整的测试计划模板英文_测试方案和测试计划

项目名称: 某某系统 使用背景: // 用户 协会分会负责人、期刊客户 开发者: 中文集团 测试版本 2.0 项目简介: 学术专著出版平台” 定位是一家图书产品联合创建、销售、返利的平台;平台联合各专业协会、学会、出版社等机构,组织大批专家人才建立“专家指导委员会”,为图书进行策划、上报、审校、出版、运营等服务;主要业务情景是:策划人寻求参编人,共同创建图书及销售,参编人支付参编图书的预购款,该笔资金作为公司运营图书的成本,等待图书出版后,让消费者以个人名片或链接的形式进行购买图书,参编人员不仅可以通过图书评职称、扩大知名度、传播学术价值,另外让参编人通过销售,实现“0”元出书并且获得额外收入;策划人在发展参编和策划人同时,获得相应奖励。

03
领券