【问题标题】:How to set Glassfish connection pool using DNS in ServerName and Url如何在 ServerName 和 Url 中使用 DNS 设置 Glassfish 连接池
【发布时间】:2017-05-27 08:40:03
【问题描述】:

我的数据库安装在具有动态 IP 的 rooter 后面的服务器上,我使用一种 DynDns 用服务器的最后一个公共 IP 更新 DNS-DB-Server

在 Glassfish 连接池属性中,我输入了 DNS-DB-Server 作为服务器名称,并在 URL jdbc:postgresql://DNS-DB-Server:5432...

在公共 IP 更改之前一切正常,当然我的 DNS-DB-Server 指向新的公共 IP,但我使用连接池的 Web 应用程序无法访问数据库

是否有其他想法可以在 Glassfish 中配置以刷新连接池。

【问题讨论】:

  • 您是否尝试过刷新操作系统的 DNS 缓存?

标签: java postgresql dns glassfish connection-pool


【解决方案1】:

我不确定是否会刷新 IP,但您肯定需要刷新打开的连接。在连接池上配置连接验证,在这种情况下,您可能希望设置在验证失败时刷新所有连接。更多信息,例如here(在连接验证部分)

【讨论】:

  • 谢谢,太好了,我试了一下,只是我想知道延迟,让我说一旦公共 ip 更新,池进程仍将验证每个连接请求的连接,或者它恢复初始行为并将使用该 IP 提前配置一个连接池,无论如何通过测试我看到 glassfish 需要所有 来刷新轮询设置这是预期的吗?
  • 启用验证后,每个连接都会在应用程序使用之前进行验证。如果您在失败时打开刷新所有连接,一旦对任何连接的验证失败(更新 IP),所有连接都会被丢弃并使用新 IP 重新创建。
猜你喜欢
  • 1970-01-01
  • 2015-09-06
  • 2016-10-21
  • 1970-01-01
  • 2011-08-24
  • 2017-08-28
  • 1970-01-01
  • 1970-01-01
  • 2013-08-06
相关资源
最近更新 更多