Рассмотрим компанию, которая хочет предоставлять услуги HTTP на региональном уровне из динамического центра обработки данных по своему выбору для данного набора пользователей или IP-адресов (например, для целей управления задержкой) в данном домене, которым они владеют (например, google.com).
Я понимаю, что когда клиент (пользователь) делает HTTP-запрос (например, GET
), этот запрос может разрешиться на IP-адрес, который мог быть предоставлен DNS-сервером интернет-провайдера и не компанией, о которой идет речь (не говоря уже о том, было ли это кешировано в /etc/hosts
, и т.д).
Таким образом, этот IP-адрес может не быть тем, к которому компания хочет направлять трафик. Например. это может быть плохой центр обработки данных, например в неподходящем для данного пользователя / местоположения регионе в данный момент по любой причине, что может привести, скажем, к длительному времени маршрутизации для IP-трафика (например, обслуживание HTTP-запросов Великобритании из США).
Как компания, предоставляющая услуги HTTP, может на практике программно контролировать, даже если только статистически, а не сразу, на какие IP-адреса должен идти HTTP-трафик для данного пользователя (IP-адрес или местоположение)?
Не решая любой сервисный IP хостинг-провайдера - огромная проблема, пользователи не могут связаться с ними.
Преобразователь DNS ISP, который выполняет нежелательное искажение результатов, рискует быть замененным другими службами. Или быть заблокированным для трафика с помощью шифрования DNSSEC или DNS через HTTP.
Что касается производительности, то даже при размещении в одном географическом регионе он может уйти довольно далеко. Уверен, что эта самая сеть Stack Exchange - это одно место (с удаленным сайтом аварийного восстановления). В местах с высокой степенью связи, например от Нью-Йорка до Лондона, время задержки относительно невелико. Но будьте осторожны, постарайтесь свести к минимуму количество обходов. Разделение сервера базы данных и связанного с ним веб-сервера океаном не принесет хороших результатов.
Типичный обходной путь для статического IP-адреса, который должен находиться в нескольких местах, - это anycast. Многие сети доставки контента имеют повсюду любые точки присутствия. На самом деле здесь меньше контроля над тем, куда идет трафик, но теоретически запросы будут идти к ближайшему через IP-маршрутизацию.
Вы упомянули Google. Google инвестировал во все вышеперечисленное: произвольные IP-адреса из собственного адресного пространства, повсюду POP, шифрование DNS и даже владение собственными транзитными сетями. Вы можете арендовать часть этой инфраструктуры через GCP.
Google несравнимо с большинством предприятий, поскольку их операции по своей сути находятся в нескольких местах. Разрешите google.com. Адрес 1e100.net будет содержать код ближайшего к вам аэропорта.