利用Spring Insight + JMeter 对Web应用进行压力测试和性能评估
2017-07-21 00:00
871 查看
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-ctl.bat Insight_Name install
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 提供许多表格和图形以辅助对访问结果的分析。
相关文章推荐
- 使用 JMeter 对 SOAP 应用进行压力或性能测试
- 使用 JMeter 对 SOAP 应用进行压力或性能测试
- 利用JMeter的录制功能对Web网页进行压力测试
- 利用JMeter进行压力测试(3)
- 使用JMeter对web程序进行压力测试
- 利用jmeter+JAVA对RPC的单接口(dubbo接口等)进行性能测试
- 使用JMeter进行Web 性能测试 - 基本操作
- 终极 Web 应用性能和压力测试工具 Gor
- 利用JMeter的Java请求采样器进行rpc接口的性能测试
- 使用Jmeter进行Web站点性能测试实例
- 使用JMeter进行Web 性能测试 - 检查点、关联和参数化
- 在window下如何利用apache web服务器的ab命令进行压力测试?
- 使用JMeter对web程序进行压力测试
- 【Dubbo】利用Jmeter对Dubbo接口进行压力测试
- 关于Ant+JMeter进行Web应用的稳定性测试
- 【转】终极 Web 应用性能和压力测试工具 Gor
- 利用Jmeter进行压力测试的步骤
- 使用JMeter进行性能测试(压力测试)
- Web 应用性能和压力测试工具 Gor
- 使用JMeter对Tomcat进行压力测试与Tomcat性能调优