性能测试调优篇---未完待续

性能测试调优一:
1.首先,看下选测交易的整个走向
纯系统内部交易:
选测交易如果是系统内的交易,每一步请求都和系统交互几次,访问了几个数据库,访问了数据库的那几张表??
该交易走了那几台机器,这几台机器的网络连接情况是什么样的??这几台机器是通过走的是哪些虚拟网卡,走了哪些路由器??带宽是什么情况??
该交易在这几台机器上消耗了多少CPU,内存,及其对磁盘做了多少次的访问??
从方法层面,从该交易的发起到结束,起了多少线程,调用了哪些相关的方法以及接口,访问了哪些表???
跨系统交易:
该交易发起后,每一步请求在系统内走了几次,调用了哪些接口,调用了几次,访问了哪些数据库以及哪几张表??

了解了以上内容后,才能准确的把握每个交易的压力点在哪里

在性能瓶颈分析时,从不同的层次去分析问题可能出现在哪一个具体的位置

2.合理的利用各种监控工具

系统资源监控,通常通过nmon来监控分析

应用层的监控,通常通过开源的工具如jprofile  java自带的jconsole visualvm以及商业化的软件如dynatrace

数据库层的监控,通常利用数据库本身的DB Snapshot(DB2快照  DB2top    Oracle的AWR报告) 或者 Spotlight on  db2   oracle 等等

3.仔细检查系统的各项参数配置,确保这些参数在最优状态

应用线程池

应用的日志级别

数据库连接池

操作系统级别的参数:文件句柄、TCP连接数等等

各个机器的资源大小是否合理:cpu、内存、磁盘空间、网络情况等

某些特定应用自带的一些参数设置(ESB  大数据平台等)

发压端的机器配置(网路情况、CPU、内存等等)

发压脚本的参数化以及参数化取值的方式是否合理,发压脚本是否本身存在一些bug或者不合理的内容

4.根据遇到的具体问题发挥你聪明的大脑,逐层分析,验证性能瓶颈的怀疑对象,逐个排除

直到找到最终的问题所在

几种常见的问题分析:

   压力上不去,不管怎么增加用户,系统的压力始终维持在一个点,且此时的资源消耗也很少,几乎可以忽略不记

查看系统日志,看是否有相关报错信息,如应用线程不足、数据库连接不足的情况,如果存在,调整后验证问题是否还存在

通常该情况是在某个资源的限制导致了压力传导不了后方,当然上述只是个人遇到的情况,也可能是其他原因造成的,需要根据实际

的情况去具体问题具体分析。

以下几种在后续在分析:

   随着压力的上升,响应时间变长

   随着压力的上升,TPS出现波动

   并发过程中,大量报错,交易成功率过低

   等等。-------未完待续

本人技术能力有限,还希望看到本文的大师多多指教,相互学习,共同提高

2018年8月

原文地址:https://www.cnblogs.com/vinnfung/p/9465401.html

时间: 2024-08-14 09:52:26

性能测试调优篇---未完待续的相关文章

Linux系统性能与调优(未完)

目录 一.基本概念 二.系统调优的目的 三.CPU工作原理 一.基本概念 QPS:query per second, 1秒内完成的请求数 RT:response time, 1个请求完成的时间 Throughput越大,Latency会越差.因为请求量过大,系统太繁忙,所以响应速度自然会低 Latency越好,能支持的Throughput就会越高.因为Latency短说明处理速度快,于是就可以处理更多的请求 最佳线程数量=((线程等待时间+线程cpu时间)/线程cpu时间) * cpu数量 线程

性能测试分析与性能调优诊断--史上最全的服务器性能分析监控调优篇

一个系统或者网站在功能开发完成后一般最终都需要部署到服务器上运行,那么服务器的性能监控和分析就显得非常重要了,选用什么配置的服务器.如何对服务器进行调优.如何从服务器监控中发现程序的性能问题. 如何判断服务器的瓶颈在哪里等 就成为了服务器性能监控和分析时重点需要去解决的问题了. 1     服务器的性能监控和分析 1.1      Linux服务器的性能指标监控和分析 1.1.1       通过vmstat深挖服务器的性能问题 1.1.2       如何通过mpstat 分析服务器的性能指标

[daily][optimize] 去吃面 (python类型转换函数引申的性能优化)(未完待续)

前天,20161012,到望京面试.第四个职位,终于进了二面.好么,结果人力安排完了面试时间竟然没有通知我,也没有收到短信邀请.如果没有短信邀请门口的保安大哥是不让我进去大厦的.然后,我在11号接到了面试官直接打来的电话,问我为啥还没到,我说没人通知我我不知道呀.结果我就直接被他邀请去以访客的身份参加面试了.不知道人力的姑娘是不是认识我,且和我有仇,终于可以报复了... 然后,我终于如约到了,面试官带着我去前台登记.前台的妹子更萌...认为我是面试官,面试官是才是来面试的.我气质真的那么合吗?

一篇文章让Oracle程序猿学会MySql【未完待续】

一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方面和难度方面都比MySql要高一些,所以精通Oracle的DB在学习MySql的时候,没有必要从头到尾再去搞一遍,只需要掌握两者的用法区别即可.故本篇文章就针对Oracle和MySql的区别来把MySql的知识掌握住,在文章中,实例都是MySql环境下的实例,而Oracle可能知识一句话来概括,所以

MySQL 数据库规范--调优篇(终结篇)

前言 这篇是MySQL 数据库规范的最后一篇--调优篇,旨在提供我们发现系统性能变弱.MySQL系统参数调优,SQL脚本出现问题的精准定位与调优方法. 目录 1.MySQL 调优金字塔理论 2.MySQL 慢查询分析--mysqldumpslow.pt_query_digest工具的使用(SQL脚本层面) 3.选择合适的数据类型 4.去除无用的索引--pt_duplicate_key_checker工具的使用(索引层面) 5.反范式化设计(表结构) 6.垂直水平分表 7.MySQL 重要参数调优

某度质量部测试开发面试题1(未完待续)

点击链接加入QQ群 522720170(免费公开课.视频应有尽有):https://jq.qq.com/?_wv=1027&k=5C08ATe 1. 黑盒测试和白盒测试常用的测试方法有哪些?举例说明. 答:白盒测试:逡辑覆盖法,主要包括诧句覆盖,判断覆盖,条件覆盖,判断条件覆盖,组合条件覆盖.路径覆盖. 黑盒测试:等价划分类,边界值分析,错诨推测法等 2. 静态测试和动态测试的概念. 答:静态方法是不运行被测程序本身,仅通过分析和检查源程序的语法.结构.过程.接口等来检查程序的正确性.对需求规格

MySQL性能测试调优

MySQL性能测试调优 操作系统 基本操作 查看磁盘分区mount选项 $ mount 永久修改分区mount选项(系统重启后生效) 修改文件 /etc/fstab 中对应分区的mount options列的值 在线修改分区mount选项(系统重启后失效) $sudo -t ext4 -o remount,noatime,errors=remount-or / 文件系统优化 ext4文件系统优化 分区mount选项加noatime $sudo -t ext4 -o remount,noatime

whatweb.rb 未完待续

#!/usr/bin/env ruby #表示ruby的执行环境 =begin # ruby中用=begin来表示注释的开始 .$$$ $. .$$$ $. $$$$ $$. .$$$ $$$ .$$$$$$. .$$$$$$$$$$. $$$$ $$. .$$$$$$$. .$$$$$$. $ $$ $$$ $ $$ $$$ $ $$$$$$. $$$$$ $$$$$$ $ $$ $$$ $ $$ $$ $ $$$$$$. $ `$ $$$ $ `$ $$$ $ `$ $$$ $$' $ `$

Android性能调优篇之Hierarchy Viewer工具的使用

详细内容请查看我的简书地址:Android性能调优篇之Hierarchy Viewer工具的使用 或者我的个人博客地址:Android性能调优篇之Hierarchy Viewer工具的使用