• 性能测试初期需要做的准备


    就最近遇到的坑,自己总结的一些准备事项

    1. 收集各个服务器的配置信息,几个CPU,多少G内存,多大的硬盘,更详细一点的可以将CPU主频,硬盘是否固态都了解清楚
    2. 了解整个系统的架构,是否双机,有无反向代理,负载均衡的配置
    3. 了解一下系统的各个端配置的连接数,
    中间件tomcat的最大连接数,空闲连接数
    war包中的连接池的初始连接数,最大连接数
    DB的最大连接数
    4. 要开始运行了,将各个服务器的硬盘使用情况看一下,清一下log日志等

     

    1的目的是为了多次性能测试后,对服务器能处理的能力有一个大致的了解
    2的目的是为了有失败的时候,考虑到一些架构上的问题,思考的范围加大
    3的目的是不要以为别人的连接数很小而导致队列资源等待,而你花很长时间去定位,要事先了解系统的一些配置
    4的目的是硬盘满了,整个压测TPS上不去,你看系统资源等情况都不太看得出来,程序也照常运行,很容易白费功夫,分析了半天死在准备上


    各个环节用到的工具或者命令
    1.
    a. 如果服务器是linux
    uname -a
    cat /etc/issue
    cat /etc/issue | grep Linux
    cat /proc/cpuinfo
    cat /proc/meminfo
    df -H
    b. 如果服务器是Windows
    我的电脑右击或者设备管理器查看

    看到在线上运行的App Node, 双机配置不一致,一个2核一个4核,用1:1的负载在跑着;

    也看到一些项目,CPU核数一样,主频赫兹数不一样,在跑着;

    后期定位问题发现一个App资源占用率高,一个低的


    2. 画出系统拓补图

    3. 查看连接数
    如果是tomcat,在server.xml中可以查看,Connector
    如果是war包中的连接池,一般是对DB的连接池,找开发问他配哪儿了,一般config文件
    如果是DB中配置的连接数,一般这边很少配置了,因为war包中有配置对DB的连接池,SQLserver中select @@MAX_CONNECTIONS SELECT * FROM sys.configurations;


    4.  Linux系统用df -H 或者windows直接登录或者远程登录查看

    5. 如果是查询,请插入一定量的数据再压测;如果是新增,新增中一般也有查询判断,比如注册中,手机号不能存在等,最好也要先插入一定的数据。如果新增之前不需要查询,比如log入库,可以不用准备数据。

  • 相关阅读:
    Centos 下oracle 11g 安装部署及手动建库过程
    MongoDB 存储引擎Wiredtiger原理剖析
    有关RDS上只读实例延时分析-同适用于自建MySQL主从延时分析判断
    windows 下my.ini的配置优化
    什么是purge操作
    linux内核调优参考
    通过第三方镜像仓库代理下载镜像
    微积分拾遗——链式法则
    Java中的RASP实现
    机器学习是什么
  • 原文地址:https://www.cnblogs.com/qianjinyan/p/9405793.html
Copyright © 2020-2023  润新知