问题标签 [connection-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.
ruby - ConnectionPool 和 ConnectionPool::Wrapper 之间的 Ruby mperham/connection_pool 区别
在以下https://github.com/mperham/connection_pool,任何人都可以指导我 ConnectionPool 和 ConnectionPool::Wrapper 有什么区别?在什么情况下应该使用 ConnectionPool::Wrapper ?如果它们相似,每种方法的优缺点?我发现通过阅读文档很难理解https://github.com/mperham/connection_pool
oracle - 如何在独立(战争)和嵌入式 Tomcat 中为 Spring-Boot 应用程序配置数据源?
我有一个带有以下内容的 Spring-Boot-Aplication dependencyManagement
:
以及以下内容dependencies
:
在Tomcat上,我将JNDI-Datasource配置为:
在.properties
-file 中,我添加了以下属性:
由于Spring-Boot
能够从属性配置DataSource,我让它这样做并且我没有为DataSource编写额外的代码。部署在独立的 Tomcat中,它可以完美运行。
从逻辑上讲, Spring Boot在嵌入式 Tomcat中找不到JNDI 资源,并将应用程序作为Spring-Boot-Application 启动我得到:
我希望能够将应用程序作为Spring-Boot-Application 启动,并构建一个可以部署在任何Standalone Tomcat中的war文件。
properties
如果应用程序作为Spring-Boot-Application 启动或者我必须有第二个.properties
文件,这是否可以通过添加第二个 DataSource 来实现?
mongodb - MongoDB中的连接池与jongo
我想为 MongoDB 使用连接池。我已经将 MongoDB 与 Jongo 和 Spring MVC 框架一起使用。
这是我用于 MongoDB 配置的 spring xml 代码,它工作正常。
我需要配置一个连接池。任何人都可以指导,如何使用现有代码实现 MongoDB 连接池?
google-app-engine - 使用 Google App Engine 和 Google Cloud SQL 的连接池
关于在 Google App Engine 中使用数据库连接池有很多问题,但最近发生了很多变化。到目前为止,我永远无法获得与 GAE 一起使用的连接池。但是,我认为最近的一些开发可能允许连接池工作,这可能是谷歌文档中提到它的原因(最近似乎已经更新)。
https://cloud.google.com/sql/docs/mysql/connect-app-engine
有人可以确认可以使用连接池吗?
1) 我们使用了 Google Cloud SQL 第一代,数据库可能会停用(进入睡眠状态)。这将使任何现有的连接陈旧。
使用第二代数据库,不会停用数据库。所以这可能会解决问题。
2) 许多连接池实现使用线程。
随着 GAE 支持 Java 8,看起来允许使用线程。
3)有人认为GAE有限的数据库连接数(12)是使用连接池的一个理由。连接池大小可以设置为 GAE 的限制,因此应用程序永远不会超过限制。
a) 首先,根据数据库的大小,文档表明连接的数量要大得多。
https://cloud.google.com/sql/docs/quotas
b) 其次,如果 GAE 应用程序有限制,是每个服务器实例的限制还是整个 GAE 应用程序的限制?
任何确认上述想法是有道理的都将不胜感激。
java - 如何在 Amazon-ECS 实例之间共享连接池
我在 Amazon-ECS 上运行了 spring-boot 应用程序。使用 ECS 动态添加应用程序实例。现在每个应用程序都有 HikariCP 用于连接池。所以当我增加实例时,每个实例上的连接池不共享,这会导致问题。我该如何处理这个问题?
到目前为止,我已经尝试创建将处理连接池和查询的中间层,但这又是另一个瓶颈,我该如何扩大这个瓶颈?另一部分是使用 JNDI,这与以前的解决方案有些相似。或者调整每个集群上连接池的大小,但是当实例增加或减少时,我也希望调整这个大小。
老实说,我不知道人们如何在集群环境中处理连接池。可以做些什么来共享连接池,或者问题是应该完全共享&如果是这种情况,如何限制连接数,这样实例就不会饿死。
firebird - Firebird 嵌入式连接池是否毫无意义?
我正在使用为数据库嵌入的 firebird 3 创建应用程序服务器。连接池通常会加快进行一次事务并断开连接的短连接的速度。但这是否也适用于在连接时没有进行身份验证和网络事件的嵌入式 firebird?
java - postgresql(设置角色用户)命令如何在 SSM 项目中使用?
现在项目使用的是springmvc+spring+mybatis+druid+postgresql 项目中的用户对应数据库中的用户,所以每次运行SQL都要用(set role user)命令切换用户,然后执行crud数据库的操作。
我的问题:因为连接池中有很多连接,所以第一步是获取数据库的连接,然后切换用户,然后对数据库进行业务SQL的操作。但是我不知道这个逻辑应该处理到项目的哪个部分,因为连接池的连接和SQL的执行都是由底层代码实现的。你有什么好的计划吗?能不能给我一个完整的demo,比如下面的操作:
第一步,从spring security(或shiro)获取用户名。
第二步,从连接池中获取当前使用数据库的连接。
第三步,执行SQL(set role user)切换角色。
第四步,执行crud操作。
第五步,重置数据库连接(重置角色)
java - java中的连接池允许通过jdbc url获取连接?
我试图找到允许通过 jdbc url 获取连接但失败的连接池。Hikari 连接池不允许这样做,c3po 中的情况相同。我的用例是:
有人知道java世界中的这种连接池吗?
sql-server - 连接池可以同时为多个事务提供相同的连接吗?
在 Web API 应用程序中,我们将存储库模式与 SQL 服务器一起使用。我们得到以下连接错误,
- 已经有一个与此命令关联的打开的 DataReader,必须先关闭它。
- 无效操作。连接已关闭。
- ExecuteReader 需要一个打开且可用的连接。连接的当前状态是正在连接。
是否有可能在连接池中共享连接?
我们同时打开多个连接
java - 如何在单个 JDBC 连接中执行多个 JPA 查询
在 Spring-boot 应用程序中,我将 JPA 与 Hibernate 一起使用。
我有一个自定义选择查询方法,其中在 JPA 存储库中定义了参数化的 IN 子句。由于数据量很大,我正在执行多次相同的查询,并将小批量的 ID 作为参数传递。但我无法提高性能。
大约有 200000 条记录,所用时间为 1 分钟。这是非常巨大的。
以下是我累的事情
- 只选择所需的列,而不是整个 POJO -> 确实将查询时间减少了 8 秒
当我分析 Hibernate 静态数据时:以下是找到的日志:
(获取 1 个 JDBC 连接花费了 382016470 纳秒;释放 0 个 JDBC 连接花费了 0 纳秒;准备 1 个 JDBC 语句花费了 798909958 纳秒;执行 1 个 JDBC 语句花费了 305523944 纳秒;执行 0 个 JDBC 批处理花费了 0 纳秒;执行 0 个 L2C 放置花费了 0 纳秒;0执行 0 个 L2C 命中所花费的纳秒;执行 0 个 L2C 未命中所花费的 0 纳秒;执行 0 个刷新(总共刷新 0 个实体和 0 个集合)所花费的 0 纳秒;执行 0 个部分刷新(总共刷新 0 个实体和 0集合)
即使使用 Hikari 连接池也需要时间来创建 JDBC 连接。以下是光属性
并为每个 jpa 查询建立 JDBC 连接,做好准备。即使设置了以下属性
spring.datasource.hikari.data-source-properties.cachePrepStmts=true spring.datasource.hikari.data-source-properties.useServerPrepStmts=true
我保持 IN 子句的参数数量不变
代码片段网
我想提高性能,欢迎提出任何建议。
有什么方法可以避免 JDBC 查询准备时间或 JDBC 连接获取时间?