赞
踩
项目组上线后,遇到一个令人蛋疼的问题,好几张表频繁被锁住,导致数据库状态更新不及时,业务阻塞不能继续干活!
网上百度了一些都说是Spring事务嵌套锁死导致的,但我遇到不是这个问题导致的,因为研发测试阶段从来没有出现过类似问题,如果是事务嵌套导致锁死,那么早就发现了。。。。那么问题到底出现在哪里呢。。。。
说出来有点不可思议,这张表其实除了此处修改,其他几乎没有更新的地方,但有一处地方是对此表进行关联查询,生产环境上查询响应时间耗时40秒左右,用户频繁操作查询,导致数据库这个表压力太大,连带着其他好几张表更新出现问题!
问题原因:查询性能太慢,数据库压力太大,对象被锁定,导致事务出现问题。
解决办法:优化sql查询(打索引解决,查询性能提升至0.2秒-0.5秒!)
注意:平时研发、测试、压测虽然都通过了,但是还会隐藏很多问题,上线后,由于单据量爆增,查询效率断崖式下降,很多致命问题都显现出来。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。