web性能监控与分析
注:原文为:andyguo: 《web性能监控与分析》
性能测试需要使用不同的工具,结合系统日志,监控服务器、应用等方面的多项指标。以下阐述监控指标、监控工具、瓶颈分析。
服务端监控指标
性能测试通常需要监控的指标包括:
服务器
Linux(包括CPU、Memory、Load、I/O)。
数据库
Mysql(缓存命中、索引、单条SQL性能、数据库线程数、数据池连接数)。
中间件
1.tomcat 2、nginx 3、memcache(包括线程数、连接数、日志)。
网络
吞吐量、吞吐率。
应用
jvm内存、日志、Full GC频率。
客户端监控指标
LoadRunner
用户执行情况、场景状态、事务响应时间、TPS、吞吐量等。
测试机资源
CPU、Memory、网络、磁盘空间。
常用监控工具
Jstat
监控java 进程GC情况,判断GC是否正常。
JConsole
监控java内存、javaCPU使用率、线程执行情况等,需要在JVM参数中进行配置。
JMap
监控java程序是否有内存泄漏,需要配合eclipse插件或者MemoryAnalyzer来使用。
JProfiler
全面监控每个节点的CPU使用率、内存使用率、响应时间累计值、线程执行情况等,需要在JVM参数中进行配置。
Nmon
全面监控linux系统资源使用情况,包括CPU、内存、I/O等,可独立于应用监控。
Probe
全面监控tomcat的线程、内存、JVM CPU 使用率、OS 和 JVM内存使用率、交换区使用率、每30秒内接收到的请求数目等等
Memadim
1. 服务器参数监控:STATS、SETTINGS、ITEMS、SLABS、SIZES实时刷新
2. 服务器性能监控:GET、DELETE、INCR、DECR、CAS等常用操作命中率实时监控
3. 支持数据遍历,方便对存储内容进行监视
4. 支持条件查询,筛选出满足条件的KEY或VALUE
性能分析
分析信息来源
5. 监控工具所采集的信息。包括TPS、响应时间、用户并发数、JVM内存、Full GC频率、tomcat连接数,数据sql执行时间、memcache的命中率、nginx的连接数等。
6. 应用服务器的日志。包括错误日志、超时日志等。
7. 项目配合人员所提供的信息。包括DBA提供的数据库监控信息、开发人员提供的代码逻辑信息。
分析标准
1.通过性能指标的表现形式,分析性能是否稳定。比如:
2.响应时间是否符合性能预期,表现是否稳定。
3.应用日志中,超时的概率,是否在可接受的范围之内。
8. TPS维持在多大的范围内,是否有波形出现,标准差有多少,是否符合预期。
9. 服务器CPU、内存、load是否在合理的范围内,等等。
分析工具
对于部分性能指标,可借助自动分析工具,统计出数据的总体趋势:
1、LoadRunner analysis 分析
LoadRunneranalysis是loadrunner的一个部件,用于将运行过程中所采集到的数据生成报表,主要用于采集TPS、响应时间、吞吐量、服务器资源使用情况等变化趋势。
2、Memory Analyzer分析
Memory Analyzer工具可以解析Jmap dump出来的内存信息,查找是否有内存泄漏。
3、nmon_analyser分析
nmon工具可以采集服务器的资源信息。列出CPU、MEM、网络、I/O等资源指标的使用情况。
4、MONyog分析
通过此工具我们能够跟踪到执行比较慢的sql语句,并且可以分析出sql语句执行时扫描的行数,使用的索引情况。
web性能监控与分析的更多相关文章
- [转]Web性能监控自动化探索之路–初识WebPageTest
本文转自:http://www.webryan.net/2013/01/use-webpagetest-to-analyze-web-performance/ 无论是从Velocity 2012还是在 ...
- [转]基于phantomJS实现web性能监控
1.web性能监控背景描述 上期分享的<Web性能监控自动化探索之路–初识WebPageTest>从依赖webpagetest的角度给出了做性能日常检查的方案,但由于依赖结构相对复杂我们需 ...
- Linux性能监控与分析之--- CPU
Linux性能监控与分析之--- CPU 望月成三人关注 2016.07.25 18:16:12字数 1,576阅读 2,837 CPU性能指标 用户进程使用CPU的比率 系统进程使用CPU的比率 W ...
- Sentry Web 性能监控 - Metrics
系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...
- Sentry Web 性能监控 - Trends
系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...
- Go 程序的性能监控与分析 pprof
你有没有考虑过,你的goroutines是如何被go的runtime系统调度的?是否尝试理解过为什么在程序中增加了并发,但并没有给它带来更好的性能?go执行跟踪程序可以帮助回答这些疑问,还有其他和其有 ...
- [原创]HTML5 web性能监控策略
web性能重要指标--时长 通常在监控前端页面性能的时候,我们会需要获取到很多的时间戳,比如用户按下回车的时候开始计时,但这个时候,我们统计的js代码并没有加载过来,也无法读取到相关的信息.在HTML ...
- MongoDB 运行状态、性能监控,分析
这篇文章的目的是让你知道怎么了解你正在运行的Mongdb是否健康.转载自http://tech.lezi.com/archives/290 mongostat详解 启动mongodb监控,通过下面命令 ...
- MongoDB运行状态、性能监控,分析
转载自这位仁兄:地址 mongostat详解 mongostat是mongdb自带的状态检测工具,在命令行下使用.它会间隔固定时间获取mongodb的当前运行状态,并输出.如果你发现数据库突然变慢或者 ...
随机推荐
- vs2013配置opencv2.4.13
此方法配置简单,方便易行,解压opencv2.4.13后得到opencv文件夹,进行如下步骤: 1.添加环境变量 用户变量,新建,变量名opencv,值D:\opencv\build 系统变量,Pat ...
- 超级牛皮的oracle的分析函数over(Partition by...) 及开窗函数
over(Partition by...) 一个超级牛皮的ORACLE特有函数. 天天都用ORACLE,用了快2年了.最近才接触到这个功能强大而灵活的函数.真实惭愧啊! oracle的分析函数over ...
- yolo3的改变
转自:https://zhuanlan.zhihu.com/p/35394369 YOLOv3的前世今生 2013年,R-CNN横空出世,目标检测DL世代大幕拉开. 各路豪杰快速迭代,陆续有了SPP, ...
- Python字符编码以及循环机制介绍
Python字符编码以及循环机制介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 身为一名运维人员就得不断的学习,那么如何身为运维的你是否已经嗅探已经很火的Python编程啦?大 ...
- Vue.js 基础知识
0. Vue.js 是轻量级的MVVM框架: 1. index.html:<app></app>:组件载入:入口文件会默认调用一个 main.js: 2. App.vue:入口 ...
- git协同开发
当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin. 要查看远程库的信息,用git remote: [root@w ...
- POJ - 3267 The Cow Lexicon(动态规划)
https://vjudge.net/problem/POJ-3267 题意 给一个长度为L的字符串,以及有W个单词的词典.问最少需要从主串中删除几个字母,使其可以由词典的单词组成. 分析 状态设置很 ...
- luogu 1314 欧拉回路
欧拉路径:一笔画的路径 欧拉回路:一笔画的回路 两者判断方法一样但是输出略有不同.并且还有Fleury(弗罗莱)算法,但是我不会.. 这里就用dfs就好 判断条件: 1)图的连通性(可用并查集判断) ...
- ADB not responding
1.如下错误: 2.执行 如下代码 : netstat -aon|findstr "5037" 3.打开任务管理器 找到PID 为 5536 的进程 将该进程关闭 4.重启 A ...
- Postfix 邮件服务 - PostfixAdmin
PostfixAdmin 基于web的postfix邮件发送服务器的管理工具,可以直接管理postfix的虚拟域名和邮件用户,前提是这些数据是存储在mysql或者是PostgreSQL数据库中. Po ...