我是如何基于二阶段递交及悲观锁实现分布式事务的( 三 )
3. 接收到读命令时,如果与当前锁冲突,则根据事务开始时间戳判断是通知冲突事务向后更新递交时间戳,还是忽略该冲突。
>如果Raft节点意外崩溃后重新启动时,会先从存储加载锁信息恢复当前锁列表。
三、性能测试:
根据作者的经验,锁并不是影响并发性能的原因,冲突才是,所以做了个简单的并发测试。
1. 并发更新同一条记录(冲突激烈):
虚拟机(I74C8G) wrk -t2 -c120 测试约3900tps
对比参照(MacbookPro13 I74C16G):
* PostgreSql: 64线程: 调用640000次共耗时: 179295毫秒 平均每秒调用: 3569
* Cockroach: 64线程: 调用6400次共耗时: 90784毫秒 平均每秒调用: 70
2. 事务插入两条记录(无冲突):
64线程: 调用64000次共耗时: 4008毫秒 平均每秒调用: 15968
推荐阅读
- 小鱼人|如何在新赛季稳定上分?善于抓失误的小鱼人,值得认真练上一波
- 阴阳师|阴阳师SR川猿强度如何 是否值得抽卡 改变斗技环境 大佬的新玩具
- 手机游戏|梦幻西游手游:活力如何换金币 一切都已给出 就看你的选择
- 华佗|三国杀:两位\奶爸\,朱治与华佗比,强度如何呢?
- 亲朋上分|《亲朋上分》266391亲朋下分亲朋上下分永劫无间崔三娘技能介绍 崔三娘如何获得更多技能
- s6|金铲铲之战:S6双城传说如何才能快速上手?基础知识很关键
- |冰雪传奇:平民玩家四转后如何打金
- 穿越火线|CF:传说武器再度上新,那王者、炫金该如何发展?
- 打野|打野已经被削到几乎不能再削了,到底如何平衡打野位置?
- 电子竞技|新华社对话明凯、阿布,探讨电竞选手是如何炼成的?宁王无辜躺枪