【发布时间】:2015-08-20 12:35:56
【问题描述】:
我正在尝试在 IBM WebSphere Application Server v. 8.5.5.4 上使 JavaEE 应用程序生产就绪。
如果网络请求导致计算时间过长(出于任何原因,从意外的大量数据到导致无限循环的编程错误),我想在一段时间后中止它们。
我在 Web Sphere 文档中找不到任何东西(我必须说,像往常一样)。到目前为止,我在 StackOverflow 和其他地方找到的所有内容都不适合我的情况:
- 客户端超时:不是我想要的,因为我想通过终止(几乎)无限循环的线程来节省服务器资源。
- Container Managed Transactions:我没有使用它们,所以在这里设置超时会导致无处可去。
- 连接超时(JDBC 数据源):我不担心数据库请求花费太长时间,而是担心我的业务逻辑会永远循环。
- WAS Stuck Thread Detection:据我了解,这只能用于打印警告。
我会选择任何服务器端解决方案;它可能是一些 WAS 设置或一些我不知道的普通 JavaEE/Servlet 配置。
这里有 WebSphere 专家吗?感谢您的帮助!
编辑:
实际上是How do you kill a thread in Java? 和How to timeout a thread 的副本。问这个问题我假设这在 Java 中是可能的,因此在 WebSphere 中必须有一些特性。
【问题讨论】:
标签: jakarta-ee