部署版本 4.0.13
从日志看是有 key lock 了,是发生写写冲突了么?
哪如果是这种情况,悲观模式会有请求被阻塞,超过最大的等待时间就会取消请求,很常见的
日志中出现 pessimistic write conflict, retry statement 比较多
这个要怎么处理,,,
写冲突的话,只能从业务端改造,分析一下业务在什么场景下会出现这种冲突
然后,考虑下怎么样进行避免,来提高写入的效率,减少冲突的情况
比如
T1 时间, 服务A,访问数据行 P,开启了事务,写入了lock
T2 时间,服务B, 也访问了数据行P,开启事务,发现 有锁 ,阻塞等待,等待 A 释放 Lock
这种情况就需要避免,采取更合理的方式,例如可以采用中间件:消息队列,内存队列等等的方式,实现顺序写和顺序更新,这个还是要看业务场景是否可以支持
1 个赞
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。