zoukankan      html  css  js  c++  java
  • Jmeter mysql性能测试

    一:首先建立jdbc connection configuration,设置参数如图

    1.variable name
    参数名称,与后面的sample中设置的variable name一致。含义为:通过该name指定了对该数据库进行测试
    2.connection Pool Configuration:
    max number of connections:最大连接数(可以自己查看要测试数据库的最大连接数,不可大于该数:show variables like 'max_connections%';)
    max wait:最大建立连接的等待时间,大于该时间的话视为请求链接失败
    time betweene viction runs:每XX毫秒运行一次空闲连接回收器(独立线程)。
    auto commit:事务自动提交,选择yes后,之后的请求sql语句结束后会自动提交;否则不会提交,需要自己手动提交
    3.connection validation by pool
    当前设置的含义为:每5000毫秒 执行一次select 1 来确认池里面的连接还有效
     
    二.创建insertselectdeleteupdate的sample,如图
     
     
     
     
    三:关于每个请求的运行次数
    由于在正常场景中,该系统在打开页面查看数据的次数较多,其次是新增、更新,然后是删除
    设置 查询:新增、更新:删除的操作次数的比例为:10:5:3:1
    此时要用到beanshell sample
    该脚本设置了参数switch_value的值
     
    然后要添加一个逻辑控制器:switch controller(该步的含义是:当switch value=0时,运行insert(5)的请求;当switch value=1时,运行update(3);以此类推。。。
     
    四:结果查看
    这个就不多说了,直接添加聚合报告就可以了
     
    踩过的坑:
    1.跑脚本时,要注意自己发压机的性能。我自己笔记本很弱鸡,跑脚本时,测试结果偏差较大,发压机cpu一度到100% ,用非GUI的方式发压机性能也不能支撑。此时,要么换好的电脑 要么用control -slave的方式
    2.如果出现脚本运行成功(如:select),但是数据库数据并没有变化时,检查是不是选择了auto commit的方式。
  • 相关阅读:
    融云技术分享:全面揭秘亿级IM消息的可靠投递机制
    企业微信的IM架构设计揭秘:消息模型、万人群、已读回执、消息撤回等
    喜马拉雅亿级用户量的离线消息推送系统架构设计实践
    uni-app 项目使用 npm 包中的小程序自定义组件
    Leetcode563. 二叉树的坡度
    vue看源码遇到 报错
    windows使用
    mysql 显示行号
    从优秀到卓越
    【面经】阿里蚂蚁金服22秋招-Java后端
  • 原文地址:https://www.cnblogs.com/shen-qiang/p/9777669.html
Copyright © 2011-2022 走看看