一千萬個為什麽

搜索

如何使用單個域路由到多個數據中心中的特定多個數據中心



每個客戶的數據只存在於幾個全球數據中心之一,這些數據中心都回答相同的主機名(例如api.company.com)

Only a single domain for all customers globally
I want to make sure that all global customers only have to use a single domain: api.company.com to access their data, and not something like api-region3.company.com, but it may not be possible.

GEO Location DNS may go to wrong datacenter
I cannot use geo-location DNS directly, because that would mean that someone might end up accessing a datacenter that does not contain the data for that customer.

Possible solution
I could use a proxy at each of the datacenters to relay the request to the correct datacenter, based on some information in the request, but I'm not sure if there's some better established industry standard way of doing this, without duplicating the data across all datacenters. In case proxying/relaying is the best option, what is some tried-and-tested options for actually setting this up?

轉載註明原文: 如何使用單個域路由到多個數據中心中的特定多個數據中心

一共有 1 個回答:

當有人到中國旅行並嘗試訪問美國的數據時,代理會給您帶來一些問題,具體取決於您的應用在中國POP發送/接收其所有流量時是否會給您帶來一些$$$問題每個方面。

相反,我建議:

如果您的API已通過身份驗證,並且您不打算復制任何數據並且您正在使用AWS,那麽我會使用lambda @ edge來執行您所需的操作。

您可以使用GEO-DNS路由到處理驗證的lambda函數。這個lambda函數還可以記錄用戶需要去哪裏並發出重定向到正確端點的記錄。

這確實意味著您仍然需要像 api-region3.company.com 這樣的域名,但它會允許 api.company.com 執行通用任務。這取決於客戶端應用程序,然後保持該URL?至少使用重定向而不是代理應該有助於網絡流量。