【发布时间】:2019-06-19 19:52:50
【问题描述】:
我正在阅读一本关于分布式系统的书。提到的数据复制选项之一是使用multi leader 方法并将每个领导者放在different datacenter 中。不同数据中心的重点是地理上靠近用户。
然后作者讨论了由多个写入领导者出现的所有写入冲突,但他并没有过多说明如何引导用户连接到地理位置接近的数据中心。
例如,奥地利的用户向https://stackoverflow.com 发出 HTTP 请求。 Stackoverflow 在德国和北美设有数据中心。 DNS 记录指向美国的数据中心。
初始请求是否总是指向美国的数据中心?我知道一旦确定了用户,我可以指示所有 AJAX 和 img 请求指向德国(通过更改我发回的 html 响应),但初始请求(例如页面重新加载)将始终指向美国。
如果用户总是必须首先连接到远程服务器,然后才从附近的服务器获取内联资源,这有点违背了地理上接近用户的目的。我在这里错过了一些基本原则吗?
【问题讨论】: