第36问:用 mysqlslap 压测的结果,为什么比用 sysbench 的结果平稳?

BMS应用软件开发 — 7 从特斯拉到问界:主流BMS硬件架构深度解析 本文深度解析了从特斯拉Model 3到问界M5的主流BMS硬件架构,探讨了BMS在电动汽车中的核心价值与应用软件开发的关键技术。通过对比分析两家厂商的硬件设计哲学、芯片选型策略及成本控制方法,揭示了BMS硬件系统如何影响电池性能与整车安全。文章特别分享了电压采样精度、EMC设计等实战经验,为BMS开发提供宝贵参考。 阅读详情

问题

用 mysqlslap 压测 SQL 的结果,好像比用 sysbench 压测 SQL 的结果更平稳,为什么?

实验

随便找个数据库,

我们用以下 SQL 进行压测:

select sleep(@val := coalesce(@val, 0) + 1) from dual;

这个 SQL 每运行一次,sleep 的时间都会加一秒。第一次是 sleep(1),第二次是 sleep(2),…

我们先用 mysqlslap 进行压测:

查看结果:

解读一下 mysqlslap 的结果:

  • 每轮 SQL 平均运行 15s

  • 一轮 SQL 平均运行 5 个 SQL

  • 推导出每个 SQL 平均运行 3s

需要注意:结果中有个 Max 和 Min,经常发现大家将 Max 除以每轮 SQL 的个数,得出 SQL 延迟的最大时间,这个计算是错误的。

Max 和 Min 指的是如果 mysqlslap 进行多轮测试(iterations > 1),每轮运行时间的最大值和最小值。与单个 SQL 的延迟无关。

在本例中,如果我们将 --iterations 改成 3,到的 Max/Avg/Min 都是 15s 左右,但我们知道这些 SQL 的延迟分别是 1s,2s,…,5s,通过 Max/Avg/Min 无法计算得到单个 SQL 延迟的最大值/最小值。

再用 sysbench 测一次:

写一个 LUA 脚本(不会写的同学,可以直接复制 sysbench 自带的脚本 bulk_insert.lua,拿过来改一改):

然后运行 sysbench 压测:

查看结果,会发现 95% 分位数偏离平均值比较远,意味着同一个 SQL 的延迟变化较大。

通过以上简单实验,我们发现:

  • sysbench 可以反映出单个 SQL 或者局部 SQL 延迟异常的情况

  • mysqlslap 的测量对象是一个轮次,不能反映单个 SQL 的延迟情况。如果用简单的除法估算 SQL 延迟,SQL 延迟的波动会比实际情况平稳得多。

也就是说 mysqlslap 比 sysbench 的压测结果更平稳的原因,是大家对 mysqlslap 的结果进行处理时进行了错误的计算,导致波动被消除。

小贴士

本例中,我们特意使用了同一个 SQL。
如果业务压力来自于不同的 SQL,可以使用 ps_statement_avg_latency_histogram 获取不同 SQL 间的延迟差异图。


关于 MySQL 的技术内容,你们还有什么想知道的吗?赶紧留言告诉小编吧!

EZ-INSAR工具箱(使用历史问题) 把 rasterio 升到 1.3+(或退回 py39)→features能 import → 脚本能跑 → 出图 → MATLAB 不再报错! 阅读详情

相关推荐

从Multibit到Debanking:芯片设计中的时序优化完整流程解析(含真实案例)

本文深入解析芯片设计中Multibit技术与Debanking的时序优化完整流程,结合7nm移动SoC真实案例,详细探讨Multibit的核心优势、实施条件及潜在风险,并提供Debanking的触发时机与操作策略。通过平衡Multibit与Debanking,工程师可有效优化PPA(Power-Performance-Area),提升芯片设计效率。

weixin_30316097的博客 462

MySQL自带的数据库压力测试工具mysqlslap使用详解

mysqlslap是MySQL从5.1.4版开始官方自带的一个压力测试工具。它通过模拟多个并发客户端访问MySQL来执行压力测试,我们通过结果信息可以了解数据库的性能状况。mysqlslap是系统运维和DBA人员应该掌握一些常见的压力测试工具之一,其主要工作场景就是对数据库服务器做基准测试。比如:服务器的硬件资源能够支持多大的访问压力呢?优化了操作系统的内核参数后,是否提升了性能?调整了MySQL配置参数后,对性能有多少影响?

荷塘月色 5457

告别手动标注!用ENVI Classic高效搞定高光谱图像语义分割标签(以农业/地物分类为例)

本文详细介绍了如何利用ENVI Classic实现高光谱图像的半自动化智能标注,特别针对农业和地物分类场景。通过光谱特征分析、智能标注技巧和MAT文件转换,显著提升标注效率和质量,助力AI模型训练。

weixin_28694169的博客 251

mysql 性能测试 脚本_MySQL 性能测试经验

一、背景近期在进行资源调度管理平台的重构工作,其中的Resource/Property数据库设计,在没有更加优化的方案前,打算沿用当前平台的数据库结构;这就需要对当前平台的数据库结构进行剖析研究,并对其性能进行测试与分析,得出的数据结果作为后续设计和优化的参考。二、测试方法1、测试工具:mysqlslap,mysqlslap是MySQL5.1.4之后自带的benchmark基准测试工具,该工具可以...

weixin_32660831的博客 538

cutlass2.x源码解读之PitchLinearStripminedThreadMap

TensorCoord:使用layout::PitchLinearCoord作为张量坐标。Shape:使用模板参数Shape_作为tile的形状,kThreads:线程总数,定义为模板参数Threads。kElementsPerAccess:每次访问的元素数,定义为模板参数ElementsPerAccess。ThreadAccessShape:线程访问的形状,使用layout::PitchLinearShape定义。内部实现细节:ShapeVec。

jiangjkd的专栏 790

深入解析以太网接口中的BOB Smith电路设计

本文深入解析以太网接口中的BOB Smith电路设计,详细介绍了其在共模噪声抑制、浪涌防护和EMI优化中的关键作用。通过实际案例和设计要点,帮助工程师正确选择75Ω电阻和高压电容等元件,优化PCB布局,解决电压型与电流型PHY的设计差异,以及千兆与百兆以太网的特殊考量。

weixin_28339967的博客 688

mysql 压测结果_用mysqlslap压测mysql

参考文献:http://my.oschina.net/costaxu/blog/108568上面网友详细的列举了用mysqlslap对mysql的压力测试结果,我也照葫芦画瓢试了一次,结果如下:以下命令代表:用10个并发连接,对一个有10个int列,10个varchar列,两个索引的表进行写操作mysqlslap --concurrency=10 --iterations=1 --numbe...

weixin_39592240的博客 315

带隙基准源要点

要点: 负反馈>正反馈;电流镜匹配;双极型晶体管匹配;电阻匹配; 经过R0的电流????????????=????????????????−????????????????????????=∆????????????????????i_R0=(〖VBE〗_1-〖VBE〗_2)/R_0 =∆VBE/R_0 经过R1的电流????????????=i_R1= ????????????????????VBE/R_1 零温电流I = ∆????????????????????∆VBE/R_0 +

HI_WALLE的博客 2266

通过mysqlslap与sysbench对MySQL进行压测

介绍 mysqlslap是mysql自带的基准测试工具,该工具查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。mysqlslap为mysql性能优化前后提供了直观的验证依据,系统运维和DBA人员应该掌握一些常见的压力测试工具,才能准确的掌握线上数据库支撑的用户流量上限及其抗压性等问题。 更改其默认的最大连接数 在对MySQL进行压力测试之前,需要更改其默认的最大连接数,如下: [root@mysql ~]# vim /

qq_40907977的博客 676

YOLOv8【第十一章:视频追踪与流处理篇·第16节】一文搞懂,DeepStream 部署入门:NVIDIA 视频分析 SDK 与 YOLOv8 结合!

🏆 本文收录于 《YOLOv8实战:从入门到深度优化》 专栏。该专栏系统复现并梳理全网各类 YOLOv8 改进与实战案例(当前已覆盖分类 / 检测 / 分割 / 追踪 / 关键点 / OBB 检测等方向),坚持持续更新 + 深度解析,质量分长期稳定在 97 分以上,可视为当前市面上 覆盖较全、更新较快、实战导向极强 的 YOLO 改进系列内容之一。

**My Coding Family** 840

[PCIe5.0] 3.4.1 Flow Control Initialization State Machine Rules

流控初始化是PCIe链路中每个虚拟通道(VC)启用的必经流程,分为FC_INIT1和FC_INIT2两个阶段,确保发送端与接收端的缓冲区信用值协商一致。

系统固件工程师 139

mysql 性能测试工具 --mysqlslap

mysqlslap 近期的面试中,面试官提到了过往项目中的瓶颈在哪里。虽然mysql的性能并不是该项目的瓶颈。但是作为技术,mysql的性能测试并不了解,说来惭愧。回来整理了一下相关性能测试工具,以及简单的使用。 介绍 mysqlslap,mysqlslap是MySQL5.1.4之后自带的benchmark基准测试工具,该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给...

lcf枫的博客 1万+

【人工智能】提示词避坑指南:为什么大模型越让它“禁止”,它越要“唱反调”?

和 AI 沟通就像和聪明但直脑筋的工科生说话——

奶爸的编程之路,也就一周冷个三天 224

Mysql监控工具小集合

介绍一些常见的Mysql监控工具。   Cacti Cacti是 一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结 构、host以及任何一张图,还可以与LDAP...

weixin_34107739的博客 125

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

duboo性能测试 经验总结(一)linux命令 CPU I/O 网络 内存

本篇主要记录性能测试中需要使用到的各种命令,以及对各种情况的性能进行分析: 使用目录使用uptime获取CPU 1/5/15分钟前到现在的负载平均值使用IOSTAT + SAR +逻辑分区挂载于物理盘的查看方式 使用uptime获取CPU 1/5/15分钟前到现在的负载平均值 显示: 14:49:05 up 2 days, 23:44, 1 user, load average: 0.12,...

hesiyuanlx的博客 626

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

利用MySQL Cluster 7.0 + LVS 搭建高可用环境

1、前言 随着数据量规模的扩大,企业对 MySQL 的要求就不仅仅是能用了,也在寻求各种高可用方案。以前我们的大部分高可用方案其实还存在一定缺陷,例如 MySQL Replication 方案,Master 是否存活检测需要一定时间,而和 Slave 的切换也需要时间,因此其高可用程度较大依赖监控软件或自动化管理工具。而早先的 MySQL Cluster 实在不能令人满意,性能差的不行...

127

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

MySQL Cluster 7.0 +LVS 构建高可用环境

1、前言 2、安装 2.1 LVS 安装、配置 2.2 MySQL Cluster安装 3、测试 3.1 mysqlslap测试结果 3.2 sysbench测试结果1、前言随着数据量规模的扩大,企业对 MySQL 的要求就不仅仅是能用了,也在寻求各种高可用方案。以前我们的大部分高可用方案其实还存在一定缺陷,例如 MySQL Replication 方案,Master 是否存活检测需要一定时间,而

kc87654321的专栏 409

mysql数据库性能优化参考——筑梦之路

硬件和操作系统层面的优化 硬件:cpu、内存、磁盘io、网络带宽 操作系统: 应用文件句柄(ulimit -a open files) 网络配置架构设计层面的优化 集群方式(主从集群或者主主集群):避免单点故障 读写分离:读写分开,将压力分担,避免读写冲突,提高性能 分库分表:分库降低单一服务器的IO压力;分表降低单表数据量,提升sql查询效率 分布式数据库:针对热点数据,使用redis、mongodb等降低直接查询mysql的压力,提升数据检索性能数据库配置优化 ...

筑梦之路 732

MySQL问答200

本文涵盖MySQL全栈面试核心内容,包括:基础概念(关系型数据库特性、体系结构);存储引擎对比(InnoDB/MyISAM);索引原B+树、聚簇索引)与优化策略;事务ACID与隔离级别实现;锁机制(行锁、间隙锁)与MVCC原理;日志系统(redo/undo/binlog);SQL优化与执行计划分析;高可用方案(主从复制、分库分表);InnoDB底层机制(Buffer Pool、Checkpoint);以及MySQL 8.0新特性。

weixin_72753562的博客 827

sysbench与mysqlslap详解

mysqlslap基于自定义语句压测的命令如下所示:执行结果如图所示:mysqlslap与sysbench的功能和用法类似,mysqlslap也可以自定义复杂查询语句或自定义复杂表进行相应的基准测试,其自由度与sysbench相同。这两个基准测试工具几乎可以满足绝大部分MySQL基准压测场景。在实际压测过程中,建议自定义设置语句,保证压测时长大于半小时。若服务器性能优良,则测试表不应少于20个,单表数据不少于一亿条。

2401_83384536的博客 965

MySQL Cluster初步测试结果汇总图示报告 用mysqlslap与sysbench进行测试

Cluster结构图                                                 测试环境简介 Mysql cluster集群测试环境 4 data node,32G 8核cpu 4 sql node, 16G 8核cpu 1 manage node,16G 8核cpu Cluster版本:          mysql-5.5.25...

记事本 856

mysql之优化-测试工具

mysql调优 文章目录mysql调优mysqlslap测试sysbench测试tpcc测试mysql_status观察列类型选择原则 为什么要测试 高性能不是指"绝对性能"强悍,而是指业务能发挥出硬件的最大水平.性能强的服务器并非"设计"而来,而是不断改进,提升短板.测试,就是量化找出短板的过程.只有会测试,能把数据量化,才能进一步改进优化. ----想学抓药,先学号脉 测试指标? 1:...

王道长的技术博客 2046
上一篇: 技术分享 | MySQL 同一事务中更新 innodb 和 myisam 表时应怎么办?
下一篇: 技术分享 | MySQL 改表工单后台逻辑实现
爱可生开源社区
博客等级 码龄8年 1937粉丝 1004原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值