【问题标题】:Tomcat jdbc connection pool changes in hotTomcat jdbc 连接池在热的变化
【发布时间】:2012-02-21 20:35:58
【问题描述】:

有什么办法可以在hot时改变tomcat的池连接,例如释放一个连接,或者在不取消部署应用(如果数据源在应用中)的情况下减少最大连接数或停止tomcat(如果数据源在Tomcat中)

【问题讨论】:

  • 通常数据源定义一次,因此逻辑连接(您从池中获得)重用相同的套接字(因为创建它很昂贵)。因此,在部署上下文(在应用程序中)或在容器启动中(在 tomcat 配置文件中)时,它们会被初始化。要重新实例化这些类,需要重新启动上下文或重新启动容器

标签: java tomcat jdbc


【解决方案1】:

您可以使用 JMX(例如使用 jconsole)连接到正在运行的应用并进行一些操作。这实际上就是 JMX 的设计目的。

我机器上连接的jconsole JMX 路径是MBeans -> Catalina -> DataSource -> javax.sql.DataSource -> <my data source> -> Operations

我当前的 Tomcat 允许删除/添加连接属性、获取和关闭连接。如果这还不够,您可以轻松编写一个 MBean 来满足您的需求。

【讨论】:

    【解决方案2】:

    WebLogic 等一些企业容器支持您的要求,但据我所知 Tomcat 不支持。

    【讨论】:

      猜你喜欢
      • 2012-03-02
      • 2013-05-01
      • 2014-12-26
      • 1970-01-01
      • 1970-01-01
      • 2012-07-12
      • 2017-06-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多