4.1 通过重构增强代码可测试性实战 代码可测试性: 针对代码编写单元测试的难易程度。对于一段代码,如果很难为其编写单元测试,或者单元测试写起来很费劲,需要依靠单元测试框架中很高级的特性,那往往就意味着代码设计得不够合理,代码的可测试性不好 4.1.1 需求 Transaction 是经过我抽象简化 ...
分类:
其他好文 时间:
2020-06-04 19:55:14
阅读次数:
60
本文主要介绍TCC的原理,以及从代码的角度上分析如何实现的;不涉及具体使用示例。本文分析的是github中开源项目tcc-transaction的代码,地址为:https://github.com/changmingxie/tcc-transaction,当然github上有多个tcc项目,但是他们 ...
分类:
其他好文 时间:
2020-06-03 17:13:28
阅读次数:
82
set autocommit=0指事务非自动提交,自此句执行以后,每个SQL语句或者语句块所在的事务都需要显示"commit"才能提交事务。 1、不管autocommit 是1还是0 START TRANSACTION 后,只有当commit数据才会生效,ROLLBACK后就会回滚。 2、当auto ...
分类:
数据库 时间:
2020-05-30 15:26:04
阅读次数:
88
session 分配的内存,在事务过程中用来存储二进制日志的缓存。 当我们执行多语句事务的时候,所有session的使用的内存超过max_binlog_cache_size的值时,就会报错: Multi-statement transaction required more than 'max_bi ...
分类:
系统相关 时间:
2020-05-28 16:39:03
阅读次数:
72
什么是事务 事务(Transaction)是访问和更新数据库的程序执行单元;事务中可能包含一个或多个sql语句,这些语句要么都执行,要么都不执行。作为一个关系型数据库,MySQL支持事务. 一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成 事务只和DML语句 ...
分类:
数据库 时间:
2020-05-24 21:02:13
阅读次数:
70
路径:Transaction Controller(事物控制器) Add Saampler HTTP Request 具体如下添加: ...
分类:
Web程序 时间:
2020-05-24 18:06:41
阅读次数:
53
输出响应 大多数情况,我们不需要关注 对象本身,只需要在控制器的操作方法中返回数据即可。 最简单的响应输出是直接在路由闭包或者控制器操作方法中返回一个字符串,例如: 但是这种修改了之后,所有数据都是json,如果全是接口可以使用这种方式 方式二:json方法返回 格式: 例: 重定向 我们有succ ...
分类:
Web程序 时间:
2020-05-24 16:50:14
阅读次数:
66
事务的使用方式 事务的错误处理 WATCH命令 生存时间 缓存策略 Redis中的事务(transaction)是一组命令的集合。事务同命令一样都是Redis的最小执行单位,一个事务中的命令要么都执行,要么都不执行。 事务的原理是先将属于一个事务的命令发送给Redis,然后再让Redis依次执行这些 ...
分类:
其他好文 时间:
2020-05-24 09:44:29
阅读次数:
49
序言 为了让用户有更加良好的体验,在操作成功或者失败后,来个提示并跳转页面,我就在Yii2上实现了这一个效果。在写这个跳转提示页的时候,找资料我发现网上关于这方面的中文资料真的很少,大家也都共享下吧! 需求分析 1、用户在操作成功或者失败后,来个提示并跳转页面。2、使用这种方式$this->succ ...
分类:
其他好文 时间:
2020-05-23 16:44:37
阅读次数:
42
官方文档:InnoDB Locking and Transaction Model 一、InnoDB存储引擎中的锁 1.共享锁和排它锁(Shared and Exclusive Locks)--行级别锁 InnoDB存储引擎实现了两种标准的行级锁: 共享锁(S):允许持有该锁的事务读取一行记录。 排 ...
分类:
数据库 时间:
2020-05-23 16:24:29
阅读次数:
81