在AJAX请求中更新域名的DNS

way*_*ure 6 javascript dns ajax jquery

我们有DNS故障转移设置,TTL为180秒.当服务器出现故障时,它会将A主机记录中的IP地址更新为工作服务器的IP地址.目前,我们的网站在一段时间内使用AJAX请求刷新.当其中一个服务器发生故障时,DNS会更新并进行故障转移,因此如果您对域进行ping操作,则它具有正确的IP.但由于某种原因,在浏览器内部以及TTL过期后很久,AJAX请求仍保留分配给域名的旧IP地址(请注意,页面无法在浏览器中重新加载).我知道在阅读其他问题时,您无法强制刷新客户端上的DNS缓存.我的问题是,你们中的任何人都知道使用javascript或AJAX实现这一目标的另一种方法或技巧吗?谢谢.

cmr*_*rgo 2

使用两个(或更多)子域。例如。data1.example.com 和 data2.example.com 对应物理服务器。

但是,为了跨域工作,您需要设置document.domain允许域之间的通信:

document.domain = "example.com";
Run Code Online (Sandbox Code Playgroud)

然后,您需要脚本在不同服务器之间手动进行故障转移。这是我所知道的唯一方法,并且在许多安装中都取得了成功。