我的编程空间,编程开发者的网络收藏夹
学习永远不晚

关于Queries_per_sec 性能计数器

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

关于Queries_per_sec 性能计数器

关于Queries_per_sec 性能计数器

【问题描述】

Queries_per_sec (QPS)是数据库两个比较重要的性能计数器指标。我们经常要求开发告知这个参数,以评估数据库的一个负载情况。下面的这段代码连上服务器,做一个简单的查询:

using (MySqlConnection conn = new MySqlConnection())
{
conn.ConnectionString = "Database=xx;Host=xx;Port=xx;User Id=xx; Password=xx; charset=utf8;pooling=true;";
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
conn.Open();
cmd.CommandText = " select * from test where ID = 3";
cmd.ExecuteNonQuery();
conn.Close();
}

我们加一个循环,执行200万次。可以看到Queries_per_sec 大约在930次/秒。

Questions_per_sec 大约在620次/秒

执行的时间从14:56:52开始到16:45:22结束,约6510秒,期间执行200万次。根据我们的理解,QPS应该在 200万/6510 = 310次/秒左右。但我们系统采集的Queries_per_sec或Questions_per_sec都和这个数据不符。Questions_per_sec是期望值的两倍,Queries_per_sec是期望值的三倍。这是为什么呢。

【问题分析】

性能计数器是我们从show global status采集而来。其中的Questions和Queries定义如下:

Questions
The number of statements executed by the server. This includes only statements sent to the server by clients and not statements executed within stored programs, unlike the Queries variable. This variable does not count COM_PING, COM_STATISTICS, COM_STMT_PREPARE, COM_STMT_CLOSE, or COM_STMT_RESET commands.
Queries
The number of statements executed by the server. This variable includes statements executed within stored programs, unlike the Questions variable. It does not count COM_PING or COM_STATISTICS commands.

这个定义有点复杂。我们在服务器上开启General Log, 就可以看到,上面的查询其实还包含Init DB的操作:
3499308 Init DB testdb
3499308 Query select * from test where ID = 3
3499308 Init DB testdb
3499308 Query select * from test where ID = 3

所以,这就解释了为何Questions_per_sec 比我们预期的多了一倍,这是因为有Init DB操作的缘故。
应该还有另外一个操作,使得Queries_per_sec 这个性能计数器是我们预期的QPS的三倍左右。我们跟踪show global status like "com_%"; 这个命令,可以发现下面三个计数在增加:
1、Com_admin_commands
2、Com_change_db
3、Com_select

第二和第三比较好解释,Com_Change_DB相当于我们的Init DB, COM_Select就是我们的SELECT查询。而第一个Com_admin_commands就比较奇怪了。经查代码,这是下面的几计数器的集合。其他的一般都用不到,能用到的就剩下COM_PING了。

COM_CHANGE_USER
COM_SHUTDOWN
COM_PING
COM_DEBUG
COM_BINLOG_DUMP_GTID
COM_BINLOG_DUMP

所以问题就比较清楚了。

【结论】

Queries_per_sec 比我们预期的QPS高三倍,是由于驱动程序对连接有Ping的一个检验动作。这个动作应该也算作Queries。在Questions里体现不出来。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

关于Queries_per_sec 性能计数器

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

关于Queries_per_sec 性能计数器

【问题描述】Queries_per_sec (QPS)是数据库两个比较重要的性能计数器指标。我们经常要求开发告知这个参数,以评估数据库的一个负载情况。下面的这段代码连上服务器,做一个简单的查询:using (MySqlConnection conn = new
关于Queries_per_sec 性能计数器
2020-11-20

SparkSQL关于性能调优选项详解

这篇文章将为大家详细讲解有关SparkSQL性能调优选项,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获
2023-02-01

怎么启用WCF性能计数器

本篇内容主要讲解“怎么启用WCF性能计数器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么启用WCF性能计数器”吧!随着时代的发展,Microsoft推出的WCF被我们越来越多的人使用,我们就
2023-06-17

关于Vue中的计算属性和监听属性详解

这篇文章主要介绍了关于Vue中的计算属性和监听属性详解,Vue.js模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的,在模板内放入过长的或复杂的逻辑时,会让模板过重且难以维护,需要的朋友可以参考下
2023-05-20

关于东芝BG3 PCMARK性能超高的研

最近拿到一块东芝BG3的128G SSD,首先让人意外的是它没有DRAM,其次在Y720上测试了它的PCMARK性能,竟然达到18万,子项中的HDD1/2分值尤其高,哥百思不得其解。仔细研究过这块盘的结构以后,Marvell的主控加东芝自家
2023-01-31

关于dubbo的RPC和RESTful性能及对比

这篇文章主要介绍了关于dubbo的RPC和RESTful性能及对比,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-12-19

WCF服务性能计数器怎么用

小编给大家分享一下WCF服务性能计数器怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!WCF服务性能计数器服务性能计数器将服务行为作为整体来进行衡量,可用于诊
2023-06-17

怎么设计一个高性能网关

这篇文章主要介绍“怎么设计一个高性能网关”,在日常操作中,相信很多人在怎么设计一个高性能网关问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么设计一个高性能网关”的疑惑有所帮助!接下来,请跟着小编一起来学习吧
2023-06-15

关于redis状态监控和性能调优详解

前言 对于任何应用服务和组件,都需要一套完善可靠谱监控方案。 尤其redis这类敏感的纯内存、高并发和低延时的服务,一套完善的监控告警方案,是精细化运营的前提。 本文主要给大家介绍了关于redis状态监控和性能调优的相关内容,分享出来供大家
2022-06-04

关于服务器性能优化你必须知道的那些事!

服务器性能优化是保障网站或应用稳定运行的关键,本文将介绍一些常见的服务器性能优化技巧,帮助您提高服务器性能,提升用户体验。
关于服务器性能优化你必须知道的那些事!
2024-02-09

编程热搜

目录