锁冲突很多。大量慢sqlPrewrite 阶段耗时高

【 TiDB 使用环境】生产环境4014
【复现路径】做过哪些操作出现的问题
业务大量并发update一行记录
【遇到的问题:问题现象及影响】
导致cpu升高,数据库变慢。锁冲突很多

是不是升级版本可以减缓这个问题,新版本,锁信息是写到内存的,比写到磁盘效率高很多吧

自问自答, :joy:新版本肯定有很多优化。

调研一下,看看效果好多少

对,关键是 2pc,优化成 1pc 了,事务的执行效率也提高了

如果不升级版本,可以考虑采用乐观锁的方式来优化

这版本太老了,我接触的版本都v5.0.0起的

可能会好点, v6 版本悲观锁 Region leader 的内存中,
但是主要还是要解决sql 逻辑,避免锁冲突。拆分大事务

他们一下子大量update同时修改同一行

这个不敢乱改啊

这个还是要在业务上解决。
为什么大量的update同时修改同一行数据

1 个赞

这个明显业务逻辑有问题,设计不合理

升级吧

什么使用场景?tidb 不适合秒杀这种场景喔,regoin 受不了的

另外,版本的确有点老了,用新版本测试一下吧

锁冲突优先看业务逻辑

升级新版本可能会有改善

多并发同时访问一行数据,业务设计就不合理,看看如何优化访问方式吧

1 个赞

我们以前就有一套业务系统是这样的,大量的update相同的数据,最终的解决办法还是业务逻辑调整

1 个赞

你升V7.5.X,不说治百病,至少90%的慢现象会消失,不需要你知道原因。