从而游戏端和网站后台都当掉了。
所以我在想,有没有什么办法能查找某张表有多少个连接。如果连接数在极限,那么我可以等待其处理完毕在去请求这个表。
请大佬们指教下。
PS:.NET 开发的后台
4 个解决方案
#1
死锁的原因应该不是20个链接极限造成的,应该是对数据处理请求有问题,比如事务未释放等,先再找出死锁原因的吧
#2
游戏端那边说用异步,队列之内的。然后说操作网站的时候导致死锁了,其实我很BS他,但是非得让我来解决这个,我现在能想到的就是 所有的网站SQL语句前面加SET LOCK_TIMEOUT 1800,SELECT 加 with(nolock) 其他我没想到
#3
现在能确认是那张表死锁了吗?
#4
你说的 限定锁时间, 还有加 with(nolock) 肯定是有效的。
不过, 目前你最好是先确定到底哪些情况造成了死锁: https://blog.csdn.net/yenange/article/details/73883915
不过, 目前你最好是先确定到底哪些情况造成了死锁: https://blog.csdn.net/yenange/article/details/73883915
#1
死锁的原因应该不是20个链接极限造成的,应该是对数据处理请求有问题,比如事务未释放等,先再找出死锁原因的吧
#2
死锁的原因应该不是20个链接极限造成的,应该是对数据处理请求有问题,比如事务未释放等,先再找出死锁原因的吧
游戏端那边说用异步,队列之内的。然后说操作网站的时候导致死锁了,其实我很BS他,但是非得让我来解决这个,我现在能想到的就是 所有的网站SQL语句前面加SET LOCK_TIMEOUT 1800,SELECT 加 with(nolock) 其他我没想到
#3
死锁的原因应该不是20个链接极限造成的,应该是对数据处理请求有问题,比如事务未释放等,先再找出死锁原因的吧
游戏端那边说用异步,队列之内的。然后说操作网站的时候导致死锁了,其实我很BS他,但是非得让我来解决这个,我现在能想到的就是 所有的网站SQL语句前面加SET LOCK_TIMEOUT 1800,SELECT 加 with(nolock) 其他我没想到
现在能确认是那张表死锁了吗?
#4
你说的 限定锁时间, 还有加 with(nolock) 肯定是有效的。
不过, 目前你最好是先确定到底哪些情况造成了死锁: https://blog.csdn.net/yenange/article/details/73883915
不过, 目前你最好是先确定到底哪些情况造成了死锁: https://blog.csdn.net/yenange/article/details/73883915