问题标签 [bonecp]
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.
java - 如何配置 C3P0 或 BoneCP 数据源以承受数据库故障转移/中断
我有一个基于 Spring/Hibernate 的应用程序,我需要对其进行修改以承受长达 1 分钟的数据库中断。我没有编写自己的 hack,而是查看了 C3P0 和 BoneCP 数据源,看看它们是否可以为此目的进行配置。不幸的是,我无法让它适用于任何一个数据源。根据使用的数据源,我的测试程序因各种异常而终止:
使用 c3p0 数据源
使用 c3p0 连接提供程序
使用 BoneCP 数据源
使用 BoneCP 连接提供程序
C3P0 文档声明它可以处理这样的情况,而 BoneCP 文档没有直接提及这一点。
为了测试这一点,我编写了一个小程序,它从 HSQLDB 服务器读取一个表并休眠一秒钟,然后再次重复该过程。它可以配置为使用以下配置运行:c3p0_datasource.xml
c3p0_connectionprovider.xml
bonecp_datasource.xml
bonecp_connectionprovider.xml
有谁知道这是否可以做到?
PS!如果有人需要深入研究,您可以从此链接下载测试项目:)
以下是构建和运行这些东西的步骤。
但它没有:(
scala - 具有关闭连接的 BoneCp 池
我正在使用带有光滑的 Bonecp 数据源。发现池包含关闭的连接所以我总是遇到这个异常
配置:
有人可以告诉我 bonecp 或我的配置有什么问题吗?
playframework-2.0 - 玩框架2、postgres“此连接已关闭”
我正在运行一个 Play 2.2.0 应用程序,使用 Postgres 9.2-1002-jdbc4 和 Anorm 2.2.0 API。每隔一段时间,我就会遇到如下连接问题:
我知道没有数据库连接问题;数据库在同一个盒子上运行。这些连接问题每天大约间歇性发生 2-3 次,并且会自行恢复。
我尝试了这些可笑的低连接测试设置:
这些连接设置似乎减少了它,但我想知道是否发生了更基本的事情。postgres 日志中没有任何内容。
mysql - BoneCP 创建了太多连接。统计数据给出负数
[BoneCP Version : 0.8.0.RELEASE]
[Guava Version : 11.0.2]
我使用guice-mybatis
withbonecp
作为数据源提供者。getConnection()
为了在 mysql master 和 slave 之间旋转,我已经用 over-ridden 包装了 MySQL 驱动程序。我看到 boneCP 创建的连接数量超过了应用程序所需的数量。考虑到 QPS,我们有 10 个活动连接应该足够了,但它创建了超过 30 个。此外,bonecp 统计数据给出了负数:
从 netstat 我看到 ESTABLISHED 连接的总数等于pool.getTotalFree()
所有集群的总和。
注意:我有另一个 db [oracle],我使用 bonecp 没有遇到这个问题。唯一的区别是我们没有包装驱动程序,并且不需要在不同的主机之间轮换getConnection()
请求。
在迁移到 BoneCP 之前,我使用的是 C3P0,在那里我们遇到了性能问题,但统计数据很好。我正在阅读源代码以确定根本原因。
java - 带有 BoneCP STRANGE 错误的 Java 连接池
我是java编程的新手,我正在努力学习。
我有一个数据库 mysql,我使用连接池管理连接,BoneCP 是我使用的库。
创建池的代码是这样的:
当我需要连接以向 DB 发送查询时,我使用这行代码捕获连接: conn = R.database.connectionPool.getConnection();
我认为此时一切正常,我没有任何错误。
一分钟后控制台说:
这是个奇怪的问题!!
非常感谢!!
java - 在 Full GC 之后,socket 的实例还在继续增长吗?
我有如下代码片段的套接字应用程序。我已确保套接字在 finally 块中关闭。我猜我昨天或前一天刚刚有一个完整的 GC。然后我在这个 FGC 之前通过 jmap 比较套接字的实例和今天在 FGC 之后但实例没有减少而是继续增加?可能是什么原因或引用 jmap 是错误的?另一件事是,在完全 GC 之后,老年代不会变成 0?
heroku - Playframework 2.1 和 Bonecp 0.8.0 的数据库连接问题:此连接已关闭
我在 Heroku 上使用 postgresql 9.2.4 的 Playframework 应用程序上遇到了 Bonecp 0.7.1 的问题。在几个数据库访问以下错误后,此版本似乎存在数据库连接泄漏:
由于连接池的每个线程都被获取并保留,应用程序在我重新启动之前无法访问。
然后听说这个问题在 Bonecp 0.8.0 中得到了纠正,所以我升级了 lib。但问题似乎并没有完全解决。事实上,现在不再保留连接线程,这使得应用程序可以随时访问,但有时数据库连接突然关闭......应用程序抛出以下错误,导致最终用户出现 500 错误:
非常感谢你的帮助!
编辑 :
数据库配置:
编辑2:
这是我根据这篇文章Heroku/Play/BoneCp 连接问题设置的数据库配置 这些更改减少了“此连接已关闭”问题的数量,但我仍然每天收到 1 或 2 个问题,这导致某些 HTTP 请求失败. 所以问题仍然没有解决:
java - 如何使用 JDBC 来最大化 Netty 的性能?
我正在使用 Netty 4 和 JDBC(+BoneCP 用于连接池)开发 HTTP 应用程序服务器。
到目前为止,我正在一个处理程序上完成所有工作(涉及数据库连接、HttpAsyncClient 等的工作)。每个作业完成后我都会关闭所有 I/O。
据我所知,只要没有阻塞工作线程,Netty 的性能就会很好。
但是,我读到JDBC 连接会创建阻塞 I/O。
将 JDBC 与 Netty 结合使用来提高可伸缩性和性能是否有良好的做法?
jakarta-ee - A child container failed during start
I am getting below error;