当前位置: 首页 > 知识库问答 >
问题:

Slick 3.0的HikariCP池名配置

公良俊楚
2023-03-14

我在应用程序中使用以下类型安全配置。用于Slick 3.0的配置。HikariCP是Slick 3.0的默认连接池。我将池名设置为“primaryPool”:

slick.dbs.primary= {
  driver="com.typesafe.slick.driver.ms.SQLServerDriver$"
  db {
    url = "DB URL"
    driver = com.microsoft.sqlserver.jdbc.SQLServerDriver
    user = "myUser"
    password = "myPassword"
    poolName="primaryPool"
  }
}

从HikariCP日志中,我看到了清理前池统计数据db(总计=21,使用次数=0,可用次数=21,等待次数=0)

使用默认连接池名称“db”,但不是我所期望的primaryPool。我怀疑配置格式不正确。

所以我的问题是如何在应用程序中配置poolName。使用类型安全配置?

注意:因为我的应用程序中将有几个连接池,所以我希望记录特定的池名称来区分不同的池。

共有1个答案

艾令秋
2023-03-14

我通过在自己的代码中设置poolName找到了一个解决方案:

 val dbConfig = dbConfigProvider.get[JdbcProfile]
 val poolName = dbConfig.config.getConfig("db").getString("poolName")
 dbConfig .db.source.asInstanceOf[HikariCPJdbcDataSource].ds.setPoolName(poolName)

这不是一个好的解决方案,因为我硬编码HikariCPJdbcDataSource,但它至少能满足我的要求。

仍然希望在application.conf.中得到如何正确配置poolName的帮助

 类似资料:
  • 大家好,我的社区, 我和我的詹金斯和希卡里普有一个非常恼人的问题。 正确地看待这个问题:我有一个使用hikariDataSource的Spring Boot应用程序。它在开发时工作良好,所有测试都在本地运行,没有任何问题。但是,如果同一个项目作为ci作业在jenkins中运行,这与我在开发机器上执行的操作完全相同,那么它会在清理连接池时卡住一段时间: 2015-08-28 15:51:52.090

  • 当容器加载时,spring boot HikariCP提供的默认连接池大小是多少? 当然,我使用下面的属性来设置最大cp大小,但是我想知道如果我们在application.properties文件中没有给出任何数字,默认的cp大小是多少。 如果我给出application.properties最大池大小为100,而我只使用20,这会影响我的应用程序性能吗?

  • 我使用EclipseLink作为使用Play框架和Akka的应用程序的持久性提供程序。在play framework 2.3.x中,应用程序正常运行。现在我正在迁移到2.4.x,随后将迁移到2.5.x,但是当我从eclipse外部运行应用程序时遇到了一些问题: “没有名为Default的EntityManager的持久性提供程序”。 随着Play Framework连接池库从BoneCP更改为Hi

  • 地狱, 我是否可以获取HKARIP连接池度量信息,如总连接数、空闲连接数等? 我知道Hikaripool记录这样的信息: 清理前池统计数据库(总计=20,使用次数=0,可用次数=20,等待次数=0) 但是它太频繁了,我的代码无法控制它。我想在可配置的时间内记录这些信息,例如1分钟。顺便说一句,我用Scala Slick 3.0

  • 我正在使用hikaricp(这可能也适用于任何其他数据库连接池)。我有一个DBPool类,在其中我实例化了一个HikariDataSource(使用HikariConfig对象)。对于这个DBPool,我使用lazyholder习惯用法来限制每个VM一个池实例。但是,一旦获得对池的引用,就可以检索连接对象(无需任何进一步的锁/同步/信号量检查),因为我认为连接池会处理我的连接对象限制。每次通过数据

  • 我使用的是SpringBoot2.0。3释放。我想增加HikariCP的最大池大小,默认情况下为10。 我试着在带有 spring.datasource.hikari.maximum-池-大小=200 但是它不起作用,因为在日志中它仍然显示最大池大小为10。 我想改变的原因是,我不知怎么地达到了登台的极限,我不知道是什么原因造成的。