文档章节

利用Spring Insight + JMeter 对Web应用进行压力测试和性能评估

C
 ChainJ
发布于 2017/07/21 16:34
字数 887
阅读 54
收藏 0
点赞 0
评论 0

Spring Insight Spring Insight 是一款提供Web应用行为和表现可视化实时检测的工具,简单说就是服务器收到请求,Spring Insight 通过一些图形和数据告诉检测者这些请求的请求时长。通过分析一些细节数据,检测者可以得出请求快、慢或异常的原因。 既然是通过分析细节数据才能得到请求快慢的原因,那 Spring Insight 可以提供哪些数据呢? 1,JDBC 查询时间 2,Spring Bean 响应时间 3,外部请求时间 针对 Hibernate 或 Spring MVC 这些框架,它还能告诉开发者请求中数据库访问的事务数、为请求绑定参数的耗时以及请求头的详细信息等。从这些数据中,我们能获取数据库查询数和它们的性能的列表,包含详细请求信息的请求列表,Spring Bean 方法调用列表,Spring Bean 的调用和性能列表。可以看到这些信息对分析 Spring 框架下的业务逻辑很有帮助。 关于 Spring Insight 的用处,不再赘述,下面说一下它的安装和使用。

Insight安装和使用 Spring Insight 是基于 Pivotal tc Server 的应用,所以我们需要下载一个开发者版本的服务器。附上 pivotal tc server developer edition下载地址 https://network.pivotal.io/products/pivotal-tcserver 这个地址下的 /Pivotal tc Server Developer Edition 目录下是服务器, Pivotal tc Server Templates 目录下是可以运行在 tomcat 服务器上的实例模板,我们下载其中的 Spring Insight Developer Edition 模板。 解压 tc Server 文件和 insight template 文件,将 insight 的模板拷贝到服务器根目录 (/tcserver) 的 /tcserver/templates 文件夹内,或运行 tcruntime-admin.sh get-template 命令来获取实例模板。运行 tcruntime-instance.sh create Insight_Name -t insight 来创建一个名为 Insight_Name 的 Spring Insight 实例。最后,运行 tcruntime-ctl.sh Insight_Name start开启实例。Windows下,在最后开启实例前,需要运行``` tcruntime-ctl.bat Insight_Name install

    这样 Spring Insight 就安装完成了,这些步骤后,服务器目录下会多一个文件夹 /tcserver/Insight_Name,接下来需要将需要监测的 Web 应用的 war 包拷贝到 /tcserver/Insight_Name/webapps 下就可以了。之后浏览器访问 localhost:8080/insight 即可观察到自己拷贝过去的应用包。

**JMeter** 
    常见测试概念:
    1,性能测试:展示在给定的软硬件条件下,应用所能表现出的最佳性能,以期从其中找到优化点的测试
    2,负载测试:在系统所设计的可供操作的最高负载的情况下,对应用进行的基础测试
    3,压力测试:以淹没应用资源的手段,尽可能地使应用出现崩溃的测试

    JMeter 是一款可以基于不同协议,对应用进行负载测试、压力测试、面向性能的业务(功能)测试以及回归测试等的工具。它支持的协议有:
    Web — HTTP/HTTPS
    Web Services — SOAP/RPC(Simple Object Access Protocol / Remote Procedure Call protocol)
    DataBase via JDBC Driver
    Directory — LDAP(Light Directory Access Protocol)
    Messaging Oriented Service via JMS(Java Messaging Service)
    Service — POP3(Post Office Protocol 3)、IMAP(Internet Mail Access Protocol)、SMTP(Simple Mail Transfer Protocol)
    FTP Service
    
    为了实现压力测试,我们需要多个线程同时对服务器进行访问,所以 JMeter 有线程组这样一个概念。通过配置线程组内启动线程数、循环次数等参数,我们可以在配置的时间内开启多个线程,并通过上述协议发起对服务器的访问。JMeter 提供许多表格和图形以辅助对访问结果的分析。

© 著作权归作者所有

共有 人打赏支持
C
粉丝 0
博文 4
码字总数 6834
作品 0
深圳
JMeter学习-001-JMeter初识

Apache JMeter是Apache组织开发的基于Java的开源压力测试工具(个人发现也可用于接口测试)。用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域。 它可以用于测试...

拎壶冲冲冲 ⋅ 05/29 ⋅ 0

JMeter学习-003-JMeter与LoadRunner的异曲同工

本节主要对 JMeter 与 LoadRunner 的优缺点进行概要的总结,若有不足之处,敬请指正,不胜感激! 同时,我也不得不承认,在对 JMeter 和 LoadRunner 进行比较时,我个人的确偏向了 JMeter(免...

拎壶冲冲冲 ⋅ 05/29 ⋅ 0

Dubbo Plugin for Apache JMeter

Dubbo Plugin for Apache JMeter 介绍 它是一个Apache JMeter的插件, 主要用途是在Jmeter中可视化的对Dubbo接口进行压力测试,简单易用。 Jmeter版本支持情况 Jmeter版本:3.0+ Dubbo版本支持...

凝雨 ⋅ 06/05 ⋅ 0

JMeter学习-004-WEB脚本入门实战

此文为 JMeter 入门实战实例。我是 JMeter 初学菜鸟一个,因而此文适合 JMeter 初学者参阅。同时,因本人知识有限,若文中存在不足的地方,敬请大神不吝指正,非常感谢! 闲话少述,话归正题...

拎壶冲冲冲 ⋅ 05/29 ⋅ 0

Jmeter使用CSV文件读取大量测试数据

在用Jmeter做性能测试的过程中,不可避免的我们需要制造大量的测试数据。这个时候我们可以使用CSV文件来存储大量的数据。 1、在实际的项目测试过程中,在测试注册接口的时候,其实就是需要大...

拎壶冲冲冲 ⋅ 05/23 ⋅ 0

linux环境下使用jmeter做性能测试

只需一行命令:sh jmeter.sh -n -t http.jmx -l result_*.jtl 步骤: 一 安装jmeter 1 把你笔记本的jmeter添加到压缩包 jmeter.zip 2 上传jmeter.zip到linux服务器:我用rz方式上传到了/opt/...

孟飞阳 ⋅ 05/24 ⋅ 0

JMeter 性能测试 Demo

1. Overview Who this article is for If you never use JMeter before and want to get an introduction of how to use it. The following section will show how the process of creating ......

Serein_7 ⋅ 05/30 ⋅ 0

使用jMeter构造大量并发的随机HTTP请求

在前一篇文章使用jMeter构造大量并发HTTP请求进行微服务性能测试里,我介绍了如何用jMeter构造并发HTTP请求。但是通过文中介绍的方式构造的并发请求,其请求参数都是硬编码的'Wang'. 有没有办...

JerryWang_SAP ⋅ 05/05 ⋅ 0

Jmeter学习总结【控制器】

JMeter有两种控制器:采样器和逻辑控制器。这些驱动测试的处理。 采样器告诉JMeter发送请求到服务器。例如,如果你想要JMeter发送http请求添加一个HTTP请求取样器。您还可以通过向采样器中添...

覃光林 ⋅ 05/07 ⋅ 0

JMeter 安装 --linux平台

用windows平台测试时,会受到网络条件的影响,导致测试结果不够准确,尤其是高并发的情况下,需要能够精准的测试请求的响应时长,对于网络的要求更加苛刻。在这样的情况下,可以考虑在linux...

拎壶冲冲冲 ⋅ 05/29 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

内核线程、轻量级进程、用户线程

线程与进程概念 在现代操作系统中,进程支持多线程。 进程是资源管理的最小单元; 线程是程序执行的最小单元。 即线程作为调度和分配的基本单位,进程作为资源分配的基本单位 一个进程的组成...

117 ⋅ 19分钟前 ⋅ 0

elasticsearch2.4.6升级为elasticsearch-5.5.0的经历

将elasticsearch-5.5.0 中的配置 path.data 指向原来的数据路径 即 path.data: /usr/local/src/elasticsearch-2.4.6/data 注意: elasticsearch-5.5.0 需要将jdk版本升级到1.8...

晨猫 ⋅ 19分钟前 ⋅ 1

lvm讲解 磁盘故障小案例

1

oschina130111 ⋅ 24分钟前 ⋅ 0

那些提升开发人员工作效率的在线工具

本文转载自公众号 Hollis 作为一个Java开发人员,经常要和各种各样的工具打交道,除了我们常用的IDE工具以外,其实还有很多工具是我们在日常开发及学习过程中要经常使用到的。 Hollis偏爱使用...

时刻在奔跑 ⋅ 36分钟前 ⋅ 0

restful风格 实现DELETE PUT请求 的web.xml的配置

import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframe......

泉天下 ⋅ 41分钟前 ⋅ 0

Shell数组

Shell数组 Shell在编程方面比Windows批处理强大很多,无论是在循环、运算。 bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获取数...

蜗牛奔跑 ⋅ 51分钟前 ⋅ 0

nmap为了开发方便 可以做简单的修改

因为nmap扫描是默认使用的是nse脚本,但是在开发的过程中需要修改后缀(主要是因为后缀为lua才能显示高亮,所以这里用一个取巧的办法) nse_main.lua文件中我们找到如下代码 local t, path = cn...

超级大黑猫 ⋅ 55分钟前 ⋅ 0

springmvc获取axios数据为null情况

场景:前端用了vue没有用ajax与后台通信,用了axios,但是在代码运行过程中发现axios传递到后台的值接受到数据为null。 问题原因:此处的问题在与axios返回给后台的数据为json类型的,后台接...

王子城 ⋅ 57分钟前 ⋅ 0

hadoop技术入门学习之发行版选择

经常会看到这样的问题:零基础学习hadoop难不难?有的人回答说:零基础学习hadoop,没有想象的那么难,也没有想象的那么容易。看到这样的答案不免觉得有些尴尬,这个问题算是白问了,因为这个...

左手的倒影 ⋅ 57分钟前 ⋅ 0

806. Number of Lines To Write String - LeetCode

Question 806. Number of Lines To Write String Solution 思路:注意一点,如果a长度为4,当前行已经用了98个单元,要另起一行。 Java实现: public int[] numberOfLines(int[] widths, Str...

yysue ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部