在多个国家/地区托pipe一个网站

我们的网站目前在英国托pipe,我们在www.google.co.uk上有很好的search引擎定位。 为了在美国取得同样的成功,我们的网站将不得不在美国托pipe。

我对此有几个疑问。

1)我如何设置DNS,让美国的stream量知道去更近的服务器?

2)我们的网站还没有经历大量的负载,所以暂时,美国服务器是否反向代理请求到我们的英国服务器?

3)或者我们会设置一些脚本来同步两台服务器上的数据库?

  1. 基于地理位置的DNS

    • 您可以运行绑定并使用GeoDNS对其进行修补,以根据请求者的位置返回不同的IP。

    • 自己运行DNS的另一种方法是使用一个提供程序,它允许您根据用户的位置来指定IP。 例如: GeoScaling

  2. 反向代理

    • 你可以反向代理它。 虽然可能会比较慢。
  3. 数据库

    • 数据库的同步取决于您所托pipe的应用程序的types。

问题2和问题3严重依赖于您的应用程序。 问题1在理论上可以这样实现:

  1. 为该服务器设置US服务器和相应的DNS服务器(单独)。

  2. 为所有DNS服务器提供相同的IP地址,包括在英国的服务器 – 这种技术作为Anycast已知(并广泛用于DNS)。

  3. 请求您的networking或可比色提供者通过BGP公布通往BGP服务器的路由,以便访问您的计算机。 根据您的主机设置,可能会有一些不可预见的警告。

  4. configuration每个DNS服务器为最接近它的站点的IP地址提供服务,例如让美国DNS服务器为US / .com服务器提供地址,而英国DNS服务于UK / .co.uk服务器的地址。

  5. 由于Anycast,通常会使用最近的DNS服务器,因此将返回最近的服务器的IP地址。

进一步考虑:

  • 如果你打算完全复制你的网站,这也有把美国访问者指向.co.uk域的更好的服务器,以及访问.com域的英国访问者到欧洲服务器(假设你有一个ServerAlias或其他虚拟设置)。

  • 另外请注意,如果您无法让networking提供商为您公布路线,这不是一个可行的解决scheme。 在托pipe托pipescheme中请求或要求托pipe公司提供专门资源可能非常困难。

  • 另外需要注意的是,Anycast是面向连接协议的不可靠设置,但非常适合于像DNS这样的UDPstream量。

对于#1,有很多工具可以帮助您确定用户的相对位置: http : //www.google.com/search?q=geolocation+ip

就代理和同步而言,我不确定Google是否对目标服务器的物理位置非常敏感,并且怀疑只要域名没有改变,就可以同时指向相同的目的地而他们旅行的网站。

我可以看到将网站内容镜像到美国的服务器,并应用一些本地化。 在美国拥有服务器应该为美国客户提供更快的响应。

与仅仅在英国托pipe您的美国内容相比,是否反向代理可能会减慢dynamic内容的投放速度?

如果你足够大,我想你会和Akamai谈谈。

更简单 :

1 /在全球多个虚拟主机/云提供商租赁服务器

2 /安装光油:)

3 /使用负载均衡工具(Cedexis,Dyn等)来平衡caching服务器的networkingstream量。 您可以select性地将Google IPredirect到本地caching服务器。

在这个configuration中,stream量被发送到您的美国本地caching服务器。 这非常简单,它可以帮助Google抓取工具;-)

这是testing和批准。

对于#1,我认为你不需要自己确定用户的位置,有很多服务,如dnspod.com