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

连接池越来越耗尽

仲孙文乐
2023-03-14

我有一个Spring启动,Hibernate使用java应用程序。我部署它在一个jetty webserver与多个实例.如果我有太多(大于10)很多实例我得到

com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initialize pool: FATAL: remaining connection slots are reserved for non-replication superuser connections

许多连接(10x实例)显示为空闲

ps:

postgres  9104  0.0  0.0 248968  4392 ?        Ss   08:07   0:00 postgres: user my_db 127.0.0.1(60095) idle                        

实例的Hikari跟踪日志:

2017-02-21 10:59:47.578  DEBUG 7401 --- [l-1 housekeeper] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Pool stats (total=10, active=0, idle=10, waiting=0)

设置

 hikari.leakDetectionThreshold: 30000

没有记录任何有趣的事情。我认为这看起来很有趣-连接不可用

有什么办法可以调试这个吗?我也在java 7上,所以hikari 2.4.7

共有1个答案

冯宏浚
2023-03-14

我认为您必须在PostgreSQL配置中增加max_connections参数。

https://wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server

不能允许池保留比PostgreSQL安装允许的更多的连接。

 类似资料:
  • 我正在使用Firebase来保存我的数据。我试图在活动中分离Firebase方法和我的方法。例如,我已经创建了一个名为"Firebase method odsHelper"的类,在那里我想编写所有的Firebase方法。例如,"getAllUser"方法应返回列表中的所有用户。我唯一的问题是它不起作用。 我不知道我做错了什么,所以如果你们能帮我。 碎片 FirebaseMethodHelper类

  • 我在项目中使用ApacheTomcat JDBC连接池。我很困惑,因为在重负下,我一直看到以下错误: 我的期望是,使用池,新连接的请求将被保留在队列中,直到连接可用。相反,当池达到容量时,请求似乎会被拒绝。这种行为可以改变吗? 谢谢, 达尔 这是我的池配置:

  • 我有使用hikari池创建连接池的Spring启动应用程序。我们正在使用postgres sql用于db。当我以低qps命中系统时,请求需要大约200毫秒来执行。当部署一个pod并且qps为15时,事情保持良好状态。但是一旦我将qps增加到20,请求就开始需要大约10秒来处理,连接池变空(java.sql.SQLTransientConntion异常:菲尼克斯-连接不可用,请求在30183毫秒后超

  • 前面提到多进程的并行可以提高并发度,那么进程是越多越好?一般遇到这种问题都回答不是,事实上,很多大型项目都不会同时开太多进程。 下面以支持100K并发量的Nginx服务器为例。 举个例子: Nginx Nginx是一个高性能、高并发的Web服务器,也就是说它可以同时处理超过10万个HTTP请求,而它建议的启动的进程数不要超过CPU个数,为什么呢? 我们首先要知道Nginx是Master-worke

  • 本文向大家介绍jquery代码规范让代码越来越好看,包括了jquery代码规范让代码越来越好看的使用技巧和注意事项,需要的朋友参考一下 最近学了jQuery,感觉这个jQuery是真的挺不错的,果然像他说的那样,少些多做!刚一入手感觉真是不错。但是写多了,就会发现这个代码一行居然能写那么长。而且可读性还不好。  有幸自己买了一本锋利的jQuery这本书。我就整理了下。到底在实际应用中怎么让自己的j

  • 问题内容: 我正在使用TensorFlow训练用于医学图像应用的CNN。 由于我没有大量数据,因此我尝试在训练循环中对训练批次进行随机修改,以人为地增加训练数据集。我用其他脚本编写了以下函数,并在我的培训批次中调用它: 该代码很好地适用于对我的图像进行修改。 问题是 : 在我的训练循环的每个迭代(前馈+反向传播)之后,将相同的功能稳定地应用到我的下一个训练批次中,将比上一次稳定地花费5秒。 处理大