MySQL Transaction--TPS计算规则
TPS计算规则
在MYSQL 中,TPS(Transaction Per Second)的计算方法为 (com_commit+com_rollback)/time,但com_commit和com_rollback记录的是显式事务的,因此隐式提交的事务不会被算到TPS中,如果程序未使用显示事务,即使在高并发事务下, 使用MYSQL看到的TPS也会很低。
Demo验证,分别使用存储过程显式和隐式(自动提交)1000个事务:
DELIMITER $$;
CREATE PROCEDURE USP_T2()
BEGIN
DECLARE I INT;
SET I=0;
WHILE I<1000 DO
START TRANSACTION;
UPDATE TB001 SET C1=I WHERE ID=3094;
COMMIT;
SET I=I+1;
END WHILE;
END;
$$; CREATE PROCEDURE USP_T3()
BEGIN
DECLARE I INT;
SET I=0;
WHILE I<1000 DO
UPDATE TB001 SET C1=I WHERE ID=3094;
SET I=I+1;
END WHILE;
END;
$$;
DELIMITER ;
然后使用下面语句查看事务提交数量:
SHOW GLOBAL STATUS LIKE 'com_commit' \G
SHOW GLOBAL STATUS LIKE 'com_rollback' \G
SHOW GLOBAL STATUS LIKE 'Handler_commit' \G
SHOW GLOBAL STATUS LIKE 'handler_rollback' \G
执行结果:
调用USP_T3
CALL USP_T3();
Handler_commit 的值增加2000,com_commit的值增加0 调用USP_T2
CALL USP_T2();
Handler_commit 的值增加4000,com_commit的值增加1000
MySQL Transaction--TPS计算规则的更多相关文章
- mysql qps tps计算
Information from web QPS (Query per second) (每秒查询量)TPS(Transaction per second) (每秒事务量,如果是InnoDB会显示,没 ...
- MySQL索引选择及规则整理
索引选择性就是结果个数与总个数的比值. 用sql语句表示为: SELECT COUNT(*) FROM table_name WHERE column_name/SELECT COUNT(*) FRO ...
- MySQL的性能指标计算和优化方法
MySQL的性能指标计算和优化方法1 QPS计算(每秒查询数) 针对MyISAM引擎为主的DB mysql> show global status like 'questions';+----- ...
- F2工作流引擎参与者类型成员的交、并、互拆计算规则
计算描述:计算规则指的是和其它“参与者类型成员”的之间的计算,必须求解处理人不为空的情况下才进行规则计算,各个“参与者类型成员”按序号顺序执行. 计算算法:并集(权重最低),交集(权重中) ...
- Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题
Mysql数据库表排序规则不一致导致联表查询,索引不起作用问题 表更描述: 将mysql数据库中的worktask表添加ishaspic字段. 具体操作:(1)数据库worktask表新添是否有图片字 ...
- css优先级计算规则
原文:css优先级计算规则 最近面试了一些求职者,我问css优先级计算规则是怎样的?答曰ID优先级>class>元素选择器,外联样式优先级低于内联样式,内联样式优先级低于行间样式,然后就没 ...
- 关于html表格单元格宽度的计算规则
* { margin: 0; padding: 0 } body { background: #fafafa } ul,li { list-style: none } h1 { margin: 20p ...
- Cocos2D中节点Z序的计算规则
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交 ...
- MySQL transaction
MySQL transaction(数据库的事务) 数据库事务(Database Transaction),是指作为单个逻辑工作单元执行的一系列操作. 要么完全执行,要么完全地不执行. ACID 事务 ...
随机推荐
- RabbitMQ 设置队列的过期时间
设置队列的过期时间非常简单,在声明队列时,设置x-expires参数即可.当队列的生存周期超时后,RabbitMQ server会自动将该队列删除. 代码如下: channel.QueueDeclar ...
- PHP和Mysql事物处理
这几天做支付的时候,又用到了事物,为了方便自己以后查看,今天闲的没事就把以前的东西整理下.(其中引用别人的东西,在这里谢谢他们贡献的代码!) 一.事务处理概述: 事务:是若干事件的集合 事务处理:当所 ...
- Java小程序分析
public class Helloworld { public static void main(String[] args) { System.out.println("hello wo ...
- Centos7安装配置MySQL5.7
一:安装前准备: 1.1检查linux版本:cat /etc/system-release CentOS Linux release 7.6.1810 (Core) 1.2查看系统是否安装MySQL: ...
- 几种序列化与get、set方法的关系
若get开头且第四个字母是大写的方法中有空指针异常时(无论有没有对应属性) 1.阿里巴巴的FastJson会出现空指针异常,证明与get开头的方法有关 2.Google的Gson不会出现异常,因为只和 ...
- vue2+webpack 开发环境配置
前提条件: 1.安装node.js https://nodejs.org/en/ 下载安装合适的平台 2.安装npm 第一步:初始化项目 新建文件夹 E:\app 推荐vue项目目录结构: confi ...
- Oracle中从控制文件读取的视图
Oracle中有一些数据字典视图需从控制文件中读取信息,如下所示.用户在数据库打开之前就可以访问这些视图,因为这些视图的内容存储在控制文件中. v$archived_log:归档日志信息,如大小,SC ...
- Git客户端的安装与配置入门
GitLab与Git客户端的安装与配置入门,每次配置完一段时间,就忘记配置过程了,为了自己和同学们以后有所参照,特记录了本次下载和配置,其实Git就是一个版本控制系统,类似于SVN,CVS等 下载:W ...
- svn+http+ad域
svn本地添加用户太麻烦了,如果公司有一百个开发人员要访问,要创建账号密码太麻烦了:所以让他们用AD域账号去登录就很方便,但是权限的管控还是在svn的本地添加(这个暂时还没办法很好的解决) 一.安装依 ...
- 3-log4j2之输出日志到文件
一.添加maven依赖 <dependencies> <dependency> <groupId>org.apache.logging.log4j</grou ...