2 votes

Héberger un site web dans plusieurs pays

Notre site Web est actuellement hébergé au Royaume-Uni et nous avons une très bonne position sur le moteur de recherche www.google.co.uk. Pour obtenir le même type de succès aux États-Unis, notre site devrait être hébergé aux États-Unis.

J'ai quelques questions à ce sujet.

1) Comment configurer les DNS pour que le trafic américain sache aller vers le serveur le plus proche?

2) Notre site ne connaît pas encore une quantité importante de trafic, donc pour le moment, le serveur américain va-t-il simplement inverser-proxy les demandes vers notre serveur britannique?

3) Ou devrions-nous mettre en place un script qui synchronise les bases de données sur les deux serveurs?

5voto

rmunn Points 219
  1. DNS basé sur la géolocalisation

    • Vous pouvez exécuter bind et le patcher avec GeoDNS pour retourner une adresse IP différente en fonction de l'emplacement de la personne effectuant la demande.

    • L'alternative à exécuter le DNS vous-même est d'utiliser un fournisseur qui vous permettra de spécifier l'IP en fonction de l'emplacement de l'utilisateur. Par exemple : GeoScaling

  2. Reverse Proxying

    • Vous pouvez le faire passer par un proxy inverse. Cela peut cependant être plus lent.
  3. Base de données

    • La synchronisation de votre base de données dépend du type d'application que vous hébergez.

1voto

gfrizzle Points 4518

Les questions 2 et 3 dépendent fortement de votre application. La question 1, est théoriquement réalisable comme suit :

  1. Configurez le serveur US et un serveur DNS correspondant (séparé) pour ce serveur.

  2. Donnez à tous les serveurs DNS la même adresse IP, y compris votre serveur au Royaume-Uni - cette technique est connue (et largement utilisée avec DNS) sous le nom d'Anycast.

  3. Demandez à votre fournisseur de réseau ou de colocation d'annoncer les routes vers vos serveurs DNS via BGP afin que vos machines soient accessibles. Il peut y avoir des imprévus ici en fonction de votre configuration d'hébergement.

  4. Configurez chaque serveur DNS pour servir les adresses IP du site le plus proche, par exemple, que le serveur DNS US serve les adresses des serveurs US/.com, et le serveur DNS UK serve les adresses des serveurs UK/.co.uk.

  5. En raison d'Anycast, le serveur DNS le plus proche sera généralement toujours utilisé, et retournera donc les adresses IP du serveur le plus proche.

Autres considérations:

  • Si vous envisagez de reproduire entièrement votre site, cela présente également l'avantage de rediriger les visiteurs américains vers le domaine .co.uk vers le serveur le plus proche, ainsi que les visiteurs britanniques vers le domaine .com vers le serveur européen (en supposant que vous avez une configuration ServerAlias ou autre hébergement virtuel).

  • Remarquez également que si vous ne pouvez pas obtenir votre fournisseur de réseau pour annoncer les routes pour vous, cette solution n'est pas viable. Il peut être très difficile de demander dans un scénario d'hébergement géré ou nécessiter des ressources spécialisées de votre société d'hébergement.

  • Une autre remarque est qu'Anycast n'est pas une configuration fiable pour un protocole orienté connexion, mais convient bien pour le trafic UDP comme DNS.

0voto

deacon Points 21

Pour le numéro 1, il existe de nombreux outils pour vous aider à déterminer l'emplacement relatif de votre utilisateur : http://www.google.com/search?q=geolocation+ip

En ce qui concerne le proxy par rapport à la synchronisation, je ne suis pas sûr que Google soit sensible à l'emplacement physique de votre serveur cible et je soupçonnerais que vous seriez bien avisé de pointer les deux vers la même destination tant que le nom de domaine ne change pas pendant qu'ils parcourent le site.

0voto

RedGrittyBrick Points 3782

Je peux comprendre l'intérêt de faire un miroir des contenus du site sur un serveur aux États-Unis, et d'appliquer une certaine localisation. Avoir un serveur aux États-Unis devrait fournir une réponse plus rapide aux clients américains.

Est-ce que l'utilisation d'un proxy inverse est susceptible de ralentir le traitement du contenu dynamique par rapport au simple fait d'héberger votre contenu américain au Royaume-Uni ?

Si vous êtes assez gros, je suppose que vous parlez à Akamai.

0voto

shaba Points 21

Plus simple :

1/ Louer des serveurs sur plusieurs fournisseurs d'hébergement Web/Cloud à travers le monde

2/ Installer Varnish :)

3/ Utiliser un outil d'équilibrage de charge (Cedexis, Dyn, etc) pour répartir le trafic à travers le réseau de serveurs de cache. Vous pouvez éventuellement rediriger les IP de Google spécifiquement vers vos serveurs de cache locaux.

Dans cette configuration, le trafic est envoyé à vos serveurs de cache locaux aux États-Unis. C'est très simple et cela peut aider le robot d'exploration de Google ;-)

C'est testé et approuvé.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X