gpt4 book ai didi

java - jboss 上的作业超时

转载 作者:太空宇宙 更新时间:2023-11-04 07:51:46 25 4
gpt4 key购买 nike

我正在使用 java 1.6 运行 jboss AS 4.2,我的问题如下:我们的应用程序作为包含一些 servlet 的耳朵和 war 进行分发。这些 servlet 调用所需的 EJB,这些 EJB 会进行一些处理,然后返回结果。

我正在寻找一种方法来确定超时,以防处理花费太多时间,它只会返回并结束处理(处理涉及多个 EJB)。

我可以使用 ThreadLocal 并添加一些代码,这些代码将在每个方法的开头检查是否超过了时间 - 但是是否有其他一些我可以使用的机制,而无需将此类代码添加到我的应用程序中?

任何想法/引用都会很好。

最佳答案

可能有不同的方法,但根据您的要求,我首先想到的是拦截器。

这样您就可以拦截所有有问题的(可能是长时间调用)并在超出时间时抛出异常。

是的,threadlocal 可以完成保持开始时间的工作(如果您不使用异步无状态 session bean 调用)。

要了解拦截器的功能,请参阅:http://www.adam-bien.com/roller/abien/entry/interceptors_ejb_3_for_absolute

此解决方案的主要优点是,您可以将超时功能(在拦截器中)与业务逻辑(在 EJB 中)明确分离。

关于java - jboss 上的作业超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14342243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com