Распределенные системы и выбор ближайшего датацентра - PullRequest
0 голосов
/ 10 мая 2018

Мне интересно, как всегда направлять запрос в ближайший дата-центр.Вначале я думал о создании приложения, которое вычисляет регион на основе IP-адреса, но потом понял, что это бесполезно, потому что мы до сих пор не знаем, как позвонить в ближайшее приложение ... Балансировщик нагрузки предназначен только для маршрутизации.запрос к машине, которая наименее отягощена.

Ответы [ 2 ]

0 голосов
/ 10 мая 2018

Если все, что вас волнует, это задержка, географический регион не является единственным фактором, влияющим на задержку, связанную с достижением вашего сервера.Разумный подход - просто попробовать все свои серверы и посмотреть, какой из них отвечает быстрее всего.Это купит вам другие вещи, в том числе возможность переключения серверов, когда один из них не работает.

0 голосов
/ 10 мая 2018

Одним из способов сделать это является использование GoIP на ваших DNS-серверах, например, вы можете использовать powerdns в случае, если вы хотите разместить и поддерживать свои собственные DNS-серверы.

Пример из документов зоны:

domains:
- domain: geo.example.com
  ttl: 30
  records:
    geo.example.com:
      - soa: ns1.example.com hostmaster.example.com 2014090125 7200 3600 1209600 3600
      - ns: ns1.example.com
      - ns: ns2.example.com
      - mx: 10 mx.example.com
    fin.eu.service.geo.example.com:
      - a: 192.0.2.1
      - txt: hello world
      - aaaa: 2001:DB8::12:34DE:3
  services:
    service.geo.example.com: '%co.%cn.service.geo.example.com'

Как это работает, так это путем нахождения кода страны по IP-адресу, который делает запросы (при разрешении для geo.example.com), а затем отправляет определенные записи в этот регион.

Из примера, если ваши пользователи находятся в Финляндии и пытаются набрать geo.example.com, возвращаемый IPv4 будет 192.0.2.1 и IPv6 2001:DB8::12:34DE:3

Если вы используете AWS, вы можете воспользоваться услугой route53 .

Другой способ - использовать CDN, например, вы можете попробовать Cloudflare Load Balancing options.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...