问题标签 [jdbc-pool]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1033 浏览

java - Java - 使用 Tomcat JDBC 连接池时获取活动连接数

在 Apache DBCP 中有一个方法 getMaxActive() 来获取活动连接的数量。我正在尝试使用 Tomcat JDBC 连接池。我能够创建一个数据源并使用它来运行我的查询,但我想打印到我的控制台以查看池中使用了多少活动连接。

使用 Tomcat JDBC 连接池时是否有此方法?

0 投票
0 回答
488 浏览

tomcat - Detecting first use of a Connection in a JdbcInterceptor

While creating a JdbcInterceptor for Tomcat jdbc-pool, one can override the method reset(ConnectionPool parent, PooledConnection con), which will called every time the connection is borrowed from the pool.

Is there a way to detect if this is the first time a particular underlying connection is being borrowed from the pool?

I could code something in my interceptor to "remember" and then check this each time, but I wonder if there is some type of property on the PooledConnection that I can check. I tried isInitialized(), but that is always true in the reset() method.

http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html#Interceptors

0 投票
0 回答
1090 浏览

java - 未知的线程问题导致异步 Spring 控制器方法泄漏数据库连接

我有一个异步 Spring MVC 控制器方法(它返回一个 DeferredResult),它调用一个 Spring 服务方法,该方法本身使用 entityManager 来从数据库中检索数据。

不知何故,异步控制器方法会导致连接被泄露/放弃。这是完整的堆栈跟踪:

我确定控制器和服务方法在同一个线程中运行,因为我已经通过Thread.currentThread().getName();调用记录了它,在上述情况下,线程是http-bio-8080-exec-2

我无法确定泄漏/放弃连接的原因......

有人可以帮忙吗?

编辑 1:这是相关的 Spring 配置:

编辑 2

在 MessageServiceImpl 中:

相关方面:

在服务中:

在存储库 aj 中:

0 投票
1 回答
4903 浏览

concurrency - 使用 Apache 常用 DBCP 和 DBUtils 的连接池和并发

我正在研究在不同线程中进行多个查询时的并发性。我使用 Apache DBCP 和 DBUtils 不是因为我想让我的生活复杂化,而是因为它们应该保证查询得到正确处理以及并发性。

但是,即使使用上述很酷的工具,我也会得到:

这与我在手动使用数据库和连接对象时遇到的错误相同。程序每运行 5-6 次就会发生一次,但这只是一个玩具程序,在现实世界的应用程序中,这种错误会不断弹出。

在我的示例代码下面

数据交易.java

DBTest2.java

0 投票
1 回答
386 浏览

java - jdbc负载均衡问题

我们正在使用 jdbc 负载平衡,例如“jdbc:mysql:loadbalance://...”和最大 300 个连接的 apache DBCP。当我通过“SHOW PROCESSLIST”查看 Mysql 中的进程时,向我展示了很多联系。在正常情况下,每次都是 3-4 个连接。有没有人遇到过这个问题?

0 投票
0 回答
542 浏览

google-app-engine - GAE:java.sql.SQLException:暂时错误,请重试

db.DbTransaction getConnection:空

当我重新启动 Google Cloud SQL 的实例时,它就解决了。它背后的原因是什么,我该如何解决。我在这个应用程序中使用了基于 servlet 的连接池。异常的原因是否与连接池有关或是否有任何与 App Engine 实例相关的问题与 Google Cloud SQL 的并发连接不能超过 30 个,因此泄漏最终会导致新连接失败https://developers. google.com/appengine/docs/java/cloud-sql/)。

0 投票
1 回答
828 浏览

tomcat - 带有 dbcp 池的 tomcat webapp - 池线程是免费的,但 http-bio 线程无法获得它

亲爱的大家!

有时(不容易重复)我的 Tomcat Web 应用程序在奇怪的情况下失败(如果我正确解释了线程转储),我会遇到一些奇怪的情况。我在 tomcat 上下文池配置中有 100 个池线程,并且我在线程转储中的所有 100 个线程看起来像:

AFAIK 这意味着它是免费的而且还可以但是我所有的 http 线程看起来都像

和 AFAIK 这意味着它无法从池中检索连接。我的建议是否正确,为什么泳池的行为如此奇怪?

0 投票
5 回答
16215 浏览

java - “Tomcat 7 JDBC 连接池”是否足以用于生产?它与 BoneCP 相比如何?

我们的网站每天获得大约 100 万的 pv,我们肯定会使用 Tomcat。

我找不到太多关于jdbc-pool的信息,不确定它是否足够稳定以用于生产。有人有这方面的经验吗?和任何配置/调整的东西供参考?

正如有人提到的,BoneCP可能是另一种选择。但似乎它已经停产了(很伤心......)。会是更好的选择吗?

顺便说一句,HikariCP太年轻了,我会留意它,因为它是我发现的最新/最快的 CP。

感谢您的任何建议。

0 投票
0 回答
1782 浏览

java - tomcat jdbc pool如何缓存查询结果?

我遇到了一个问题,就是tomcat jdbc pool配合hibernate缓存查询结果,但是我禁用了hibernate的缓存。

但是当我将 jdbc 池切换到 DBCP 时,问题就消失了。所以我确保在tomcat jdbc池中有查询结果缓存,但是我没有找到任何关于这个问题的文档。

有人可以告诉我如何关闭 tomcat jdbc 池中的查询缓存吗?它在 tomcat-jdbc-7.0.47 中运行,并且有下面的配置。

0 投票
0 回答
2663 浏览

tomcat - 将 grails 数据源绑定到 jndi-name

使用 mysql 数据库配置 Grails v2.2.4 应用程序以使用 JDBC 连接池和 JavaMelody 监视器。一切似乎都在 GGTS v3.4.0 中正常运行,但无法成功部署 WAR 文件。

Config.groovy 包含:

在 DataSource.groovy 中:

有人可以提供有关配置语句(在 IDE 内)的正确语法和位置的指导,以将数据源绑定到 jndi 吗?该应用程序在 Cloud Foundry 上运行,因此我们需要将所需的 Tomcat 设置填充到 war 文件中(即,我们无法更改 Tomcat xml)。

解决方案:

将 grails.naming 条目块从 config.groovy 移动到 web-app\META-INF\context.xml