![如果 Anycast 遇到来自 nginx 服务器的 404 错误,它会故障转移到下一个服务器吗?](https://linux22.com/image/781172/%E5%A6%82%E6%9E%9C%20Anycast%20%E9%81%87%E5%88%B0%E6%9D%A5%E8%87%AA%20nginx%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%20404%20%E9%94%99%E8%AF%AF%EF%BC%8C%E5%AE%83%E4%BC%9A%E6%95%85%E9%9A%9C%E8%BD%AC%E7%A7%BB%E5%88%B0%E4%B8%8B%E4%B8%80%E4%B8%AA%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%90%97%EF%BC%9F.png)
我知道 Anycast 会针对第 3 层问题进行故障转移,但如果文件不存在,Anycast 是否会进行故障转移?IE 类似 404?
似乎不会,只要 nginx 返回某些内容,anycast 就会认为该服务器是健康的。
答案1
我知道 Anycast 会针对第 3 层问题进行故障转移,但如果文件不存在,Anycast 是否会进行故障转移?IE 类似 404?
都不是。任播在网络中的多个点上提供特定的 IP 地址。当当前路由的目的地不可用或损坏时,就只能这样了。
客户端所能做的就是发送另一个相同的请求。除非一些同时网络本身进行故障转移(尤其是任播路由删除故障目的地),不会产生不同的结果。
如果你有另一个方案,其 DNS 主机名后面有多个 A 记录,那么客户端可以第一次尝试失败后尝试连接到其他 IP 地址之一在传输协议层面。但这与具体实施有关,并非一成不变。无论如何,如果联系的服务器连接并回复 - 即使是 404 - 那么客户端就不会尝试任何其他操作。