监控指标

性能測试通常须要监控的指标包含:

1.serverLinux(包含CPU、Memory、Load、I/O)。

2.数据库:1.Mysql 2.Oracle(缓存命中、索引、单条SQL性能、数据库[/url]线程数、数据池连接数)。

3.中间件:1.Jboss 2. Apache(包含线程数、连接数、日志)。

4.网络: 吞吐量、吞吐率。

5.应用: jvm内存、日志、Full GC频率。

6.监控工具(LoadRunner[/url]):用户运行情况、场景状态、事务响应时间、TPS等。

7.測试机资源:CPU、Memory、网络、磁盘空间。

监控工具

性能測试通常採用下列工具进行监控:

1.Profiler。

一个记录log的类,阿里巴巴集团自主开发,嵌入到应用代码中使用。

2.Jstat。监控java[/url]进程GC情况。推断GC是否正常。

3.JConsole。监控java内存、java CPU使用率、线程运行情况等,须要在JVM參数中进行配置。

4.JMap。监控java程序是否有内存泄漏。须要配合eclipse插件或者MemoryAnalyzer来使用。

5.JProfiler。全面监控每一个节点的CPU使用率、内存使用率、响应时间累计值、线程运行情况等,须要在JVM參数中进行配置。

6.Nmon。

全面监控linux系统资源使用情况。包含CPU、内存、I/O等,可独立于应用监控。

7.Valgrind。监控C/C++程序是否存在内存泄漏,基于linux环境。

8.Vmmap和ApplicationVerifier。监控C/C++程序是否存在内存泄漏。基于windows环境。

性能分析

可按下面顺序:

中间件瓶颈(apache/jboss參数配置、数据库參数配置)->

应用服务的debug log ->

应用服务的filter log ->

本应用的性能瓶颈(SQL语句、索引、业务逻辑、线程池设置、算法)->

服务提供者的性能瓶颈 ->

相关联的底层存储应用的性能瓶颈

分析标准

通过性能指标的表现形式。分析性能是否稳定。比方:

1.响应时间是否符合性能预期,表现是否稳定。

2.应用日志中。超时的概率,是否在可接受的范围之内。

3.TPS维持在多大的范围内,是否有波形出现,标准差有多少。是否符合预期。

4.serverCPU、内存、load是否在合理的范围内,等等。

分析工具

对于部分性能指标。可借助自己主动分析工具。统计出数据的整体趋势:

1.LoadRunner analysis

LoadRunner analysis是loadrunner的一个部件,用于将执行过程中所採集到的数据生成报表,主要用于採集TPS、响应时间、server资源使用情况等变化趋势。

2.Memory Analyzer

Memory Analyzer工具能够解析Jmap dump出来的内存信息。查找是否有内存泄漏。

3.nmon_analyser

nmon工具能够採集server的资源信息。列出CPU、MEM、网络、I/O等资源指标的使用情况。

LR杂记 - 性能測试指标及经常使用的监控工具的更多相关文章

  1. 系统吞吐量、TPS(QPS)、用户并发量、性能測试概念和公式

    PS:以下是性能測试的主要概念和计算公式,记录下: 一.系统吞度量要素: 一个系统的吞度量(承压能力)与request对CPU的消耗.外部接口.IO等等紧密关联.单个reqeust 对CPU消耗越高, ...

  2. Redis源代码分析(十三)--- redis-benchmark性能測试

    今天讲的这个是用来给redis数据库做性能測试的,说到性能測试,感觉这必定是高大上的操作了.redis性能測试.測的究竟是哪方面的性能,怎样測试,通过什么指标反映此次測试的性能好坏呢.以下我通过源代码 ...

  3. 性能測试JMeter趟的坑之JMeter的bug:TPS周期性波动问题

    先说下问题: 我在做性能測试时,使用JMeter搞了100个并发,以100TPS的压力压測十分钟,但压力一直出现波动.并且出现波动时JMeter十分卡,例如以下图: 周期性TPS波动 各种猜測: 所以 ...

  4. Android性能測试 一些适用于Android Studio的代码审查和性能測试工具

    导言: Android应用在CPU占用,内存消耗方面的性能指标是影响产品质量的重要因素,因为QQ管家,360手机助手等应用都提供直观的内存消耗,流量监控功能,致使用户比以往更加关注软件的性能,并以此进 ...

  5. mongodb3.0 性能測试报告 一

    mongodb3.0 性能測试报告 一 mongodb3.0 性能測试报告 二 mongodb3.0 性能測试报告 三 測试环境: 服务器:X86 pcserver   共6台 cpu:  单颗8核 ...

  6. Window平台搭建Redis分布式缓存集群 (一)server搭建及性能測试

    百度定义:Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对很多其它.包含string(字符串).list(链表).set(集合).zset(sort ...

  7. mysql主键设置成auto_increment时,进行并发性能測试出现主键反复Duplicate entry 'xxx' for key 'PRIMARY'

    mysql主键设置成auto_increment时,进行并发性能測试出现主键反复Duplicate entry 'xxx' for key 'PRIMARY' 解决方法: 在my.cnf的[mysql ...

  8. Linux 性能測试工具

    Linux 性能測试工具 linux performance 查看系统配置 查看CPU信息 lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64- ...

  9. PHP归档phar性能測试

    PHP自从5.3后新增PHAR归档,Phar 归档的概念来自 Java™ 技术的 JAR 归档,它同意使用单个文件打包应用程序.这个文件里包括运行应用程序所需的全部东西.该文件不同于单个可运行文件,后 ...

随机推荐

  1. python测试开发django-4.获取url参数和name的作用

    前言 如打开博客园按时间分类标签页[https://www.cnblogs.com/yoyoketang/archive/2018/10.html],里面是时间参数是动态的,如果我想获取里面的时间参数 ...

  2. List 集合转换为String

    开发中会用到把 List<string>  的内容拼接成以逗号分隔的字符串的形式,现总结如下: 方法一: public String listToString(List list, cha ...

  3. With Visual Studio, Open Same File In Two Windows, Updates Reflected in Both

    I’ve always been frustrated in Visual Studio (all versions I can remember including latest vs2012) w ...

  4. maven+jenkins+jmeter性能测试:maven把项目依赖拷贝到项目指定位置

    先上pom.xml配置: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:// ...

  5. 版本号控制-git(二)

    上次文章给大家介绍了Git的一些基本知识(http://www.cnblogs.com/jerehedu/p/4582398.html).并介绍了使用git init初始化化版本号库.使用git ad ...

  6. Informatica 常用组件Lookup之九 配置未连接的查找转换

    在映射中,未连接的查找转换与管道是分开的.您可以使用 :LKP 引用限定符编写表达式以调用其它转换中的查找.未连接查找的常用用法包括: 测试表达式中某个查找的结果 基于查找结果过滤行 基于查找的结果将 ...

  7. Search for a Range leetcode java

    题目: Given a sorted array of integers, find the starting and ending position of a given target value. ...

  8. 使用jQuery动态改变图片显示大小

    当我们要显示后台传过来若干个尺寸不一的图片时,为了保证图片大小的一致性及比例的协调,需要动态改变图片显示尺寸.通过搜索,我们可以从网上找到实现此 功能的jQuery代码如下.这段代码可以使图片的大小保 ...

  9. 10 款基于 jQuery 的切换效果插件推荐

    本文整理了 10 款非常好用的 jQuery 切换效果插件,包括平滑切换和重叠动画等,这些插件可以实现不同元素之间的动态切换. 1. InnerFade 这是一个基于 jQuery 的小插件,可以实现 ...

  10. 关于ListView中getView被重复调用的问题

    我用ListView显示数据时,自定义了一个适配器(extends ArrayAdapter),然后重写了getView方法,现在出现一个问题,就是这个getView()方法被重复调用了,比如我的_d ...