Jak zmusić użytkowników z USA do przejścia na serwer w USA, a odwiedzających z Wielkiej Brytanii - do serwera w Wielkiej Brytanii

26

Jeśli mam jedną domenę z użytkownikami z USA i Europy, a także mam 2 serwery, jeden w USA i jeden w Wielkiej Brytanii, jak mogę zmusić użytkowników z USA do przejścia na serwer USA i odwiedzających z Wielkiej Brytanii, aby przejść na serwer w Wielkiej Brytanii w aby zmniejszyć ping odwiedzających?

Po pierwsze, czy jest to możliwe? I dlaczego firmy takie jak Google mają inną domenę dla każdego kraju?

Luka
źródło
+1 za „Pytanie o dobry kontakt z dostawą”
AminM
14
Być może warto o tym wspomnieć - jeśli na dwóch serwerach jest inna zawartość, upewnij się, że istnieje sposób, aby użytkownicy zastąpili ustawienia domyślne i w razie potrzeby mogli skontaktować się z innym serwerem. W pewnym momencie, z jakiegoś dziwnego powodu, blok adresu IP, z którego korzystała moja firma, został sklasyfikowany jako znajdujący się w Hiszpanii, a nie w Wielkiej Brytanii. Firmy, których strony nalegały na przeniesienie mnie na stronę hiszpańską zamiast angielskiej bez wartości ucieczki, to firmy, z którymi już nie prowadzę interesów.
Damien_The_Unbeliever
15
Przeprowadziłem się z USA do UE i te rzeczy doprowadzają mnie do szału . Jeśli masz kopie lustrzane o tej samej treści, na pewno wyślij mnie do najbliższego. Ale przez większość czasu nie jest to ta sama treść i przechodzę do tej, którą zamierzam z konkretnego powodu. Wiem, w jakim kraju się znajduję i w którym będę w przyszłym tygodniu - ale twoja strona nie. W obu przypadkach mogę sprawić, że Twoja witryna będzie myśleć, że jestem gdziekolwiek chcę. Zamiast „siły” pomyśl „sugeruj” - IMHO.
Rob P.
7
A potem są koncerny międzynarodowe. Pracowałem w holenderskim biurze brytyjskiej filii oddziału europejskiego z siedzibą w Niemczech w amerykańskiej firmie, w której nasze zewnętrzne adresy IP pochodziły z francuskiego bloku. Nienawidzę tego, że połowa Internetu zakłada, że ​​byłem we Francji i nalegam na dostarczanie zlokalizowanych treści.
jwenting

Odpowiedzi:

22

I dlaczego firmy takie jak Google mają inną domenę dla każdego kraju?

Ponieważ ułatwia to mieć ODDZIELNĄ TREŚĆ dla każdego kraju. Treść powinna być statyczna - więc jeśli chcesz indeksować strony w języku angielskim i na przykład w języku hiszpańskim, muszą one mieć osobny adres URL. Jednym ze sposobów jest example.com/en- drugim jest en.example.com. Później skaluje się lepiej.

Po pierwsze, czy jest to możliwe?

Nie dla Ciebie. Potrzebujesz dostawcy, który obsługuje routing anycast.

Aby to zrobić samodzielnie, potrzebujesz własnych adresów IP z międzynarodowymi trasami - których nie można uzyskać dla zwykłego użytkownika, ponieważ najmniejszy przypisany blok to ponad 4000 adresów (które musisz UŻYĆ), a koszty są wysokie.

Jeśli je dostaniesz, dostaniesz routing jako AS (Autonomous System) i po prostu opublikujesz trasy prowadzące do najbliższego serwera.

Więc nie dla ciebie. Ale niektóre hosty mogą to obsługiwać.

CDN to robi - więc zdecydowanie możesz przenieść swoje statyczne rzeczy do sieci dostarczania treści.

To, co możesz zrobić, to prefiksy kraju, a następnie przekierowanie do nich z domeny głównej.

TomTom
źródło
Dzięki. Tak więc, aby zrobić to, czego szukam, potrzebuję domeny, serwera w każdym kraju i CDN, prawda?
Luka
1
Nie bardzo, możesz obsłużyć całą euopre z jednego serwera;) „każdy kraj” może być trochę trudny. Każdy region (USA, UE). CDN jest opcjonalny - pominąłbym go. Ale oddzielne domeny i serwery są najtańszym rozwiązaniem.
TomTom
Czy CDN naprawdę jest tego warte? Ping z USA do Japonii to około 500 ms. Czy to nie za dużo?
Luka
1
Odpowiedź TomToma nie jest trafna - ale kończy się dość nagle, nie biorąc pod uwagę problemów i ograniczeń. O ile nie musisz jawnie publikować różnych treści w różnych lokalizacjach, najłatwiejszym do zarządzania i najtańszym rozwiązaniem jest dostarczanie kodu HTML / AJAX bez pamięci podręcznej z jednej lokalizacji i wszystkiego innego za pośrednictwem dobrego CDN - ale PRZECZYTAJ TEN PIERWSZY: cdnplanet.com/ blog / which-cdns-support-edns-client-subnet (zauważ, że dotyczy to również hostingu
Anycast
2
Krok po kroku? Krok 1: Zatrudnij profesjonalistę, który to zrobił. Krok 2: postępuj zgodnie z jego instrukcjami.
TomTom
13

+1 za routing anycast jako „prawdziwe rozwiązanie”.

Łatwiejszą alternatywą jest zapewnienie różnych rekordów DNS dla każdego kontynentu. Amazon sprzedaje to jako Routing oparty na opóźnieniu, ale zakładam, że inni duzi dostawcy DNS oferują podobne narzędzia.

mschuett
źródło
11

Niektóre osoby wymieniły CDN jako rozwiązanie. Naprawdę tego nie potrzebujesz. Wystarczy, aby autorytatywny serwer DNS dla Twojej domeny wybrał serwer optymalny dla danego użytkownika na podstawie tego, skąd pochodzi jego żądanie DNS (i potencjalnie jakie jest bieżące obciążenie). Na przykład Akamai, będąc jednocześnie największym CDN, oferuje produkt o nazwie Global Traffic Management, który jest całkowicie odrębny od oferty CDN, która zapewnia tę samą usługę (za opłatą). Osiąga to, stając się autorytatywnym serwerem DNS dla różnych domen, którymi administrujesz, a następnie dla przychodzących żądań DNS, a następnie podaje adresy IP twoich serwerów sieciowych, poprawnie uwzględniając obciążenie i lokalizację.

Jeśli twoje serwery nie są w stanie poradzić sobie z obciążeniem (a nie chcesz kupować i administrować więcej), wtedy potrzebujesz CDN, ale to nie brzmi jak twój problem.

Thomas Higdon
źródło
8

Możesz użyć routingu anycast. Na przykład Google ma serwery DNS, takie jak 8.8.8.8, które są różnymi serwerami w zależności od tego, gdzie jesteś.

Możesz także użyć sieci dostarczania treści dla swoich danych statycznych.

Różne domeny dla każdego kraju zapewniają inne korzyści, ale to nie pomoże, jeśli wszyscy użytkownicy będą korzystać z jednej domeny.

Halfgaar
źródło
1
A ponieważ „nie możesz” używać routingu anycast (zbyt wysokie wymagania dla zwykłego użytkownika) - uzyskaj dostawcę, który go obsługuje.
TomTom
W końcu nie rozumiem, dlaczego Google używa różnych domen. Czy robią to tylko dla pingów między krajami?
Luka
@Luka - nie ma to nic wspólnego z „ping”. Ma to związek z zarządzaniem ich siecią / serwerami ORAZ dać użytkownikom poczucie znajomości. Jeśli idziesz do zlokalizowanej witryny z kodem kraju, sprawia, że ​​czujesz się ciepło i przytulnie. Marketing
ETL
@ETL Najważniejsza część tego nie dotyczy marketingu, ma na celu zapewnienie użytkownikom dostępu do treści w języku, który mogą czytać, użytkownik mówi tylko, że niemiecki nie chce skończyć na angielskiej stronie docelowej .
Rzeczywistość
3

Możesz także sprawdzić Równoważenie obciążenia w oparciu o bliskość lokalizacji . Alternatywnie sprawdź akceleratory dostawy, takie jak Fastly.

Piotr
źródło
2

Potrzebujesz geograficznego równoważenia obciążenia . To bardzo trudny, nietrywialny problem. Przyjęta odpowiedź jest niepoprawna. Możesz to zrobić. Kiedyś widziałem stronę ze skryptem, który mierzy ping użytkowników i wysyła ich na najbliższy serwer. MYŚLĘ, że to było to: http://www.austintek.com/LVS/LVS-HOWTO/HOWTO/LVS-HOWTO.geographically_distribution.html

Ponadto F5 Networks sprzedaje router do równoważenia obciążenia geograficznego, ale jest drogi.

Chloe
źródło
1

Możesz także zajrzeć na http://www.neustar.biz/services/dns-services/managed-dns-packages . pakiet Enterprise obsługuje coś, co nazywają routingiem regionalnym, i wydaje mi się, że to rozwiązanie. Podobnie jak wspomniano wcześniej w ofercie Akamai, usługa DNS jest wystarczająco inteligentna, aby wskazywać geograficznie najbliższe IP.

Piotr
źródło
1

Jeśli szukasz rozwiązania podziału obciążenia, polecam hosting oparty na chmurze / dostawców usług w chmurze.

Serwery hostingowe w chmurze zostały zaprojektowane w taki sposób, aby wykonać dokładnie taki sam proces, jaki jest wymagany, kierując do najbliższego klastra hostów.

Mam nadzieję, że to może w jakiś sposób pomóc.

Tarique
źródło