对同一张表读写频繁如何避免锁表
Posted qianjinyan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对同一张表读写频繁如何避免锁表相关的知识,希望对你有一定的参考价值。
- 如果是update多,建议支持脏读with(nolock)这样,写不会影响读。
- 如果都是insert,建议分成两个表,一个历史表,一个当前表,每天把当前表移到历史表。
今天遇到一个发短信接口,验证短信接口,Fulfiument部门的短信转化率也并不是很高,只有5%-6%。
营销短信的发送速度在50万每小时。
之后server扛不住了,DB中出现query查不完情况,锁表前奏啊
营销短信降速到20万每小时
50万/3600 =138.88每秒
20万/3600 =55.55每秒
即使100%转化率也不至于呢
发送短信,会被某表中insert 一条短信验证码code
验证短信,会先查询,是同一张表,select top 1 code from tablename where xxx=xxx and flag = 0 order by timestamp desc
查询到了进行验证通过,同时update flag =1
哎没有想到呢,最近干啥呢
以上是关于对同一张表读写频繁如何避免锁表的主要内容,如果未能解决你的问题,请参考以下文章