Java:按计划检测并删除死锁

问题描述 投票:0回答:1

目前正在研究用javaEE(EJB)编写的系统,我希望能够检测和处理数据库死锁。数据库是PGSQL我最初考虑创建一个带有@Schedule注释的ScheduledBean,以便在@Startup上运行,每隔几分钟轮询一次死锁(这将运行一个SQL语句来检测死锁)。然而,我不确定这是否是正确的做法,因为投票可能会有一些性能成本。我宁愿在Java级别而不是在SQL Server级别执行此操作。

任何建议表示赞赏。

谢谢。

java ejb java-ee-7
1个回答
0
投票

您是否需要将Java应用程序中的信息传递给SQL语句?如果没有,我建议在数据库中完全处理它,通过添加触发器,如果​​检查应该在插入/更新或类似pgAgent的情况下按计划执行。

如果您仍想从Java EE应用程序中执行此操作,那么最简单的方法是使用EJB Timer Service

© www.soinside.com 2019 - 2024. All rights reserved.