码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Jmeter并发压测数据库的TPC值


    Apache JMeter

    视频讲解演示:https://www.bilibili.com/video/BV1Dh4y1J7NW/

    Apache组织开发的基于Java的压力测试工具,常常用来模拟高并发压测场景

    下载网址:https://jmeter.apache.org/download_jmeter.cgi
    image.png

    • 下载二进制包,解压即可用
    • 安装JDK,配置环境变量(具体步骤百度吧,使用java -version能显示java版本即配置完成)
      image.png
    • 进入解压的bin目录
      • Windows双击 jmeter.bat 启动
      • 其他平台 sh jmeter 启动

    将连接数据库的驱动jar包放置于lib目录下:apache-jmeter-5.5/lib/

    各驱动配置信息和jar包下载:

    DataBaseDriverURL默认端口
    Oracle<9ioracle.jdbc.driver.OracleDriverjdbc:oracle:thin:@[host]:[port]:[serverName]1521
    Oracle>=9ioracle.jdbc.OracleDriverjdbc:oracle:thin:@[host]:[port]:[serverName]1521
    MySQL 5com.mysql.jdbc.Driverjdbc:mysql://[host]:[port]/[dbName]3306
    MySQL 8com.mysql.cj.jdbc.Driverjdbc:mysql://[host]:[port]/[dbName]3306
    PostgreSQLorg.postgresql.Driverjdbc:postgresql://[host]:[port]/[dbName]5432
    MongoDBMongoDB.Drivermongodb://[userName]:[password]@[host]:[port]/[dbName]27017
    • [host]:连接IP,本地localhost或127.0.0.1
    • [port]:数据库端口
    • [dbName]:数据库名
    • [serverName]:服务名,等同于数据库名,像Oracle常用的ocrl

    jmeter.properties 配置文件调整
    修改解压包bin目录下的jmeter.properties配置文件,默认英文设置成中文显示并调整字符集为UTF-8避免内容乱(apache-jmeter-5.5/bin/jmeter.properties)

    #language=en
    language=zh_CN
    
    #sampleresult.default.encoding=ISO-8859-1
    sampleresult.default.encoding=UTF-8
    
    • 1
    • 2
    • 3
    • 4
    • 5

    常规压测结果查看“聚合报告”:
    image.png
    使用命令执行生成网页可视化的数据库tpc值:

    # 进入解压包的bin目录下(也可配置环境变量)
    cd apache-jmeter-5.5/bin
    -- Windows
    jmeter -n -t .\xxoo.jmx -l .\webreport\result.txt -e -o .\webreport\result
    -- macOS
    ./apache-jmeter-5.5/bin/jmeter -n -t ./xxoo.jmx  -l ./webreport/result.txt -e -o ./webreport/result
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    压测结果可网页直观查看:
    主要关注并发数(Samples)和吞吐率(Throughput)
    image.png

    • 压测场景:由于压测场景是对比不同数据库在并发场景下的tpc值,为确保硬件一致,在同一台服务器上部署多个数据库,每次停其他数据库服务再进行单类库的压测。
    • 压测存在问题:一次压测后需等待5min+后才可再次压测,否则结果波动会很大
  • 相关阅读:
    5. web信息收集(OWASP实战训练)
    工控安全PLC固件逆向三
    计算时间复杂度
    21 | 多线程3
    java里关于json数组和json的使用
    工作随记:oracle重建一张1T数据量的大表
    【吐血整理】年度盘点 2019年Java面试题汇总篇——附答案
    Vue中使用pdf.js实现在线预览pdf文件流
    【Turtle合集】火遍抖音的五款魔法阵终于被我找到了(初代萌王,童年的小樱回来了)
    【JavaScript高级】05-JavaScript中with、eval语句及严格模式的使用
  • 原文地址:https://blog.csdn.net/suoyue_py/article/details/133940927
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号