Re: ближайший mirror

Kirill Morozov l0rda at l0rda.biz
Mon Feb 5 00:07:22 MSK 2007


Anycast DNS - и ближайший к клиенту сервер(лучший маршрут) будет браться из
BGP.
Не тривиально правда.


04.02.07, TDz TDz <tdz at modestus.org> написал(а):
>
> Хорошие ip->geo базы данных позволяют получить приблизительные координаты
> клиента и соответственно выбрать сервер физически наиболее близкий к клиенту
> (это чтоб не думать на какой сервер отправить клиента из нигерии) - но этот
> способ естественно не оптимален. Если Вас не смутит потеря некоторого
> времени на определение RTT то я бы просто поставил обработчик запроса и на
> PHP или perl сделал опрашиватель по принципу
>
> 1. Получить IP клиента
> 2. Отправить IP клиента на каждый из серверов в пуле. Каждый из этих
> серверов на такой запрос должен ответить средним RTT к IP клиента по
> возможности
> 3. Сделать редирект на сервер с наименьшим пингом к клиенту
> 4. Если посещаемость большая можно кешировать сетями
>
> Можно использовать brain-splitted DNS но это весьма неудобно в реализации
>
> 04.02.07, drmarker <drmarker at gmail.com> написал(а):
> >
> > Привет.
> >
> > Не совсем в тему рассылки, но без nginx тут не обойдется все равно :)
> >
> > Думаю над алгоритмом поиска "ближайшего к клиенту зеркала". Типа
> > пришел клиент, сделал запрос, ему отдается 302 на сервер, который к
> > нему ближе всего.
> >
> > Как это сделать со стороны клиента - в общем, понятно. Берем список
> > серверов, получаем ping до него и, грубо, у нас есть самый ближайший.
> >
> > А вот как со стороны сервера это сделать?
> >
> > Простейший способ - по странам. Отправлять клиента из Германии на
> > сервер в Германии. Только это не всегда работает. Например, клиента,
> > подключенного через ТТК нельзя отправлять на сервер в Ростелекоме,
> > потому что трафик пойдет через Европу.
> >
> > Есть идеи? Как бы делали вы?
> >
>
>

--
Kirill Morozov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20070205/7e87253c/attachment.html>


More information about the nginx-ru mailing list