Postgres 在通过 JBOSS 运行我的应用程序时出现致命错误

Posted

技术标签:

【中文标题】Postgres 在通过 JBOSS 运行我的应用程序时出现致命错误【英文标题】:Postgres giving fatal error while running my application through JBOSS 【发布时间】:2019-04-19 12:16:18 【问题描述】:

我正在通过 JBoss 使用 postgresql 数据库运行我的应用程序,但给了我最大连接错误,但通过 PGAdmin 我能够连接数据库

17:14:44,917 错误 [STDERR] [警告] com.mchange.v2.resourcepool.BasicResourceP ool$AcquireTask@52900718 -- 采集尝试失败!!!清除待处理的获取资源。在尝试的同时 为了获得所需的新资源,我们未能成功 允许的最大获取尝试次数 (2)。上次收购 尝试 mpt 异常:org.postgresql.util.PSQLException:致命: 剩余的连接槽保留给非复制超级用户 连接 在 org.postgresql.core.v3.ConnectionFactoryImpl.readStartupMessages(Conn

【问题讨论】:

您没有正确关闭连接的地方。 它在启动 JBoss 后立即给我这个错误。我检查了 postgre 的 pid,所以它显示超过 500 个连接我如何从 pgadmin 中杀死 pid。我无法使用命令提示符,因为我在 aws 上设置我的应用程序 所以你错误地配置了你的连接池在启动时打开了太多的连接。 您可以使用pg_terminate_backend 取消会话。您的代码中似乎存在连接泄漏。 如何使用 pg_terminate_backend 请告诉我确切的程序,我是新手 【参考方案1】:

尝试打开文件:

/etc/postgres/postgresql.conf

并增加关闭连接的数量,例如:

max_connections = 100 

【讨论】:

以上是关于Postgres 在通过 JBOSS 运行我的应用程序时出现致命错误的主要内容,如果未能解决你的问题,请参考以下文章

在配置的阻塞超时内没有可用的托管连接(JBoss 7 和 Postgres)

JBoss 4.2.0 (EAP) 的 JMX 问题?

想要在本地机器的 JBoss 服务器中分析 Web 应用程序

在 JBOSS 6 EAP 中部署一个在 JBOSS AS 5 中工作的简单 WAR 应用程序的问题

如何针对在其上运行的不同应用程序以不同方式配置 jboss EAP 6.4?

如何在不同端口后面的单个 JBoss AS 6 实例上运行不同的应用程序?