疑问1:
为什么按照上图两种公式QPS的两个计算结果差了2倍?
疑问2(已解决):
为什么按照上图两种公式TPS的两个计算结果差了几千倍?
TPS结果差异原因:因为Com_commit和Com_rollback只统计了显示提交的事务。通过show global variables like 'autocommit';可以发现这个数据库默认是隐式提交,所以结果不准确
QPS公式1需要的数据
Questions 500w
QPS公式2需要的数据
Com_select 250w
Com_insert+delede+update 3w
合计 253w
Questions
其实包括了 很多sql语句的执行,ddl, dml, show, set等。比如
SHOW GLOBAL STATUS LIKE 'Questions';
也会计算在内的。可以参考官网文档:https://dev.mysql.com/doc/ref...
QPS,如果不考虑存储过程的执行,可以采用
QPS=(Com_select + Com_insert + Com_delete + Com_update) / Uptime
。不过,要相对准确表达QPS, 采用
QPS=Questions/Uptime
计算。TPS的话,采用
TPS=(Handler_commit + Handler_rollback)/Uptime
会更加准确。