【问题标题】:Tomcat caches old dns entry of Single Sign On system‏Tomcat 缓存 Single Sign On 系统的旧 dns 条目
【发布时间】:2014-09-25 05:58:49
【问题描述】:

我有与 SSO(单点登录)系统集成的 Tomcat 6.0.14(安装在 RedHat Linux 5.5 和 Java 6 update 13 中)。

当 SSO 故障转移到不同的数据中心(并且 SSO 的 IP 地址发生更改)时,Tomcat 继续坚持使用 SSO 系统的旧 DNS 条目。

然后我必须重新启动 Tomcat 容器,以便它选择 SSO 系统的新 DNS。每次 SSO 系统故障转移到不同的数据中心时,我都必须重新启动 Tomcat。

有没有办法配置 Tomcat 在 SSO 故障转移时刷新 DNS 而无需重新启动?

【问题讨论】:

    标签: java tomcat caching dns single-sign-on


    【解决方案1】:

    这里的问题不是 Tomcat 特定的,而是特定于虚拟机的。特别是,请参阅InetAddress 的文档。 This answer 提供了解决方案,但我会给出一些完整性选项:

    似乎有三个选项:

    1. 编辑在$JRE_HOME/lib/security 中找到的java.security 文件并将networkaddress.cache.ttl 更改为合理的值而不是-1(或多或少的默认值)。

    2. 修改启动 Tomcat 的命令以更改设置,即参数-Dsun.net.inetaddr.ttl=xxx,其中xxx 是一些合理的值。

    3. 通过运行在您的应用中更改它:java.security.Security.setProperty("networkaddress.cache.ttl" , "xxx");

    【讨论】:

    猜你喜欢
    • 2013-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-14
    • 1970-01-01
    • 2011-01-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多