Sql server SQL Server隔离级别,跨负载平衡的死锁

Sql server SQL Server隔离级别,跨负载平衡的死锁,sql-server,multithreading,deadlock,isolation,Sql Server,Multithreading,Deadlock,Isolation,我知道什么是死锁以及数据库是如何生成的。我的目标是彻底澄清这个问题并记录在案 1-如何处理sql server中的除氧锁?是否有任何库或工具来处理主题 2-在实时场景中,当我的数据库在短时间内接受大量请求时,我如何强制执行。例如:我有8台专用服务器,他们正在 一秒钟内每次请求20000-40000 a->哪一个是最好的负载平衡工具,特别是如果我想的话 摆脱死锁 b->应该在哪一层进行负载平衡 物理层或软件层或两者。当然两者都是,但如何呢 根据你的经验?例如,netscaler在物理上是如何使用的

我知道什么是死锁以及数据库是如何生成的。我的目标是彻底澄清这个问题并记录在案

1-如何处理sql server中的除氧锁?是否有任何库或工具来处理主题

2-在实时场景中,当我的数据库在短时间内接受大量请求时,我如何强制执行。例如:我有8台专用服务器,他们正在 一秒钟内每次请求20000-40000

a->哪一个是最好的负载平衡工具,特别是如果我想的话 摆脱死锁

b->应该在哪一层进行负载平衡 物理层或软件层或两者。当然两者都是,但如何呢 根据你的经验?例如,netscaler在物理上是如何使用的?我 想知道他们的优点和缺点吗


这是一个长格式的注释。在我的一些ColdFusion应用程序中,我采用了以下方法来处理死锁

  • 将cfquery标记放入返回ColdFusion查询对象的函数中
  • 尝试使用try/catch调用该函数最多3次
  • 如果仍然不成功,则抛出错误
这种方法不仅限于ColdFusion。它可以应用于.net、php、java甚至tsql


而且,它不会消除死锁问题。但是,它会减少死锁发生的次数。

如果您不知道什么是死锁,应该开始。这不是一个可以用问题来解释的简单话题;太宽了。底线是,您可以编写代码来减少死锁的发生,但实际上您永远无法完全消除它们。您的应用程序只需要能够在它们发生时处理它们。简短回答:尝试快照隔离:。不过这东西很复杂。您应该首先隔离特定查询是否导致死锁。这里有一个链接:。我只是发布链接,因为你需要阅读和理解这些,然后发布一个特定的问题。