【问题标题】:Apache with mod_jk Tomcat change DNS Timeout (TTL)Apache 与 mod_jk Tomcat 更改 DNS 超时 (TTL)
【发布时间】:2013-04-19 13:14:49
【问题描述】:

我正在使用 GSLB APP 进行地理分布和负载平衡。

APP 是 Apache --> Tomcat 通过 mod_jk 在workers.properties 我有一些这样的:

worker.balancing.port=8009
worker.balancing.host=tomcats8009.gslb.domain.com
worker.balancing.type=ajp13
worker.balancing。 socket_timeout=5

如果 Tomcat GSLB (tomcats8009.gslb.domain.com) 从 IP x.x.x.x 更改为另一个 IP y.y.y.y,则 dns 解析似乎被连接器 mod_jk 缓存,并且请求仍在询问 x.x.x.x。

为了解决问题,我必须“重新加载”以更新分辨率 y.y.y.y。

有什么想法吗? Apache 或 mod_jk 连接器中是否有任何类型的 DNS 缓存?解决方案?

谢谢。
问候。

【问题讨论】:

    标签: tomcat apache2 mod-jk


    【解决方案1】:

    我不知道 mod_jk 级别是否有任何属性,但您可以在 JDK 级别设置它。假设你有 Sun,参数将是 "sun.net.inetaddr.ttl" ;将其设置为零将关闭 dns 缓存。通常不建议这样做,因为关闭 dns 缓存会影响性能。

    【讨论】:

    • 谢谢凯文,但我没有在这台服务器上安装 JDK,它只是服务器网站(apaches)。在 Tomcats 服务器上,我在 JAVA_PATH/security/java.security 属性 networkaddress.cache.ttl 进行了配置,并且运行良好。我需要一些类似于连接器 mod_jk 的东西。
    • 在这种情况下,我认为它来自操作系统。假设操作系统是 Linux(或某种 Unix 风格),您的 Apache Web 服务器是否启用了“nscd”?
    • 所有网络服务器都是 Debian 作为操作系统。我没有安装 nscd。如果我从终端进行 ping 操作,它会在更改时响应正确的 IP。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    • 1970-01-01
    • 2013-12-11
    • 2011-06-23
    • 2017-10-28
    • 2011-07-21
    相关资源
    最近更新 更多