1

我有一个在基于 Apache 的 Oracle 应用服务器中运行的 Spring Web 应用程序。恐怕我不知道这个问题可能适用于哪个组件。

我的问题是——连接池中的线程会被强行杀死吗?在极少数情况下,页面请求可能需要比平时更长的时间。页面请求是否会花费很长时间,以至于 Apache 会在不通知的情况下简单地停止线程?

如果是这样,什么设置定义了超时?

为了给出一些上下文,我在页面生成期间锁定资源,并且我想确保所有锁都被释放。我不关心 HTTP 超时——只是释放了锁。

4

1 回答 1

1

据我了解,apache httpd 服务器确实有请求超时,而浏览器确实有请求超时。代理确实有超时并且会杀死太长的 HTTP 请求。数据库池可以配置为也有请求超时,但默认情况下不应该(取决于配置)。没有人会杀死线程,只是他们将停止等待响应。

对于浏览器或任何中间代理,您无法更改它,除非您确切知道您的最终环境,并且可以控制它们的配置。

对于 apache httpd 服务器,只需查看 apache 文档。对于您的数据库池,请检查您的池配置。

于 2011-05-06T16:45:03.623 回答