gpt4 book ai didi

java - 我应该显式销毁在 Tomcat 中用作资源的连接池吗?

转载 作者:行者123 更新时间:2023-11-28 22:32:45 25 4
gpt4 key购买 nike

我的项目是创建一个 Web 服务,它将连接到 XMPP 服务器并充当向 XMPP 客户端发送消息的桥梁(WS 调用 -> XMPP 消息)。最近,我考虑创建一个连接,该连接将在所有请求之间共享(-> 我之前的问题)。

但是,我被告知要创建更具可扩展性的东西并考虑连接池。我找到了一段非常有用的代码 here .但是,我担心 Tomcat 容器中的内存泄漏 - 我已经阅读了太多关于它的内容;)在这里,我有几个问题:

  1. 如果我将该库指定为资源,它会在上下文初始化期间自动创建。例如,内存泄漏怎么办?服务器关闭?它们不会自动销毁,是吗?我知道我应该手动销毁它,创建一个 ContextListener,但我应该调用什么?
  2. 如果我放入资源定义

     removeAbandoned="true" removeAbandonedTimeout="60"

    它有助于从池中破坏僵尸连接吗?这是一种正确的解决方案还是一种灾难后的恢复?

非常感谢任何帮助,非常感谢!

最佳答案

如果您关闭服务器,那么您将关闭 JVM,资源泄漏将无关紧要。您可能读到的与 Tomcat 相关的唯一内存泄漏是 the PermGen problem ,这通常困扰着 webapp 开发。不用担心连接池。它会照顾好自己。

关于java - 我应该显式销毁在 Tomcat 中用作资源的连接池吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7706614/

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