Pull to refresh

Comments 4

Доступен ли исходный код в открытом доступе?
В fiResolver хранится контекст, хотя рекомендуется не сохранять его в структуре. Однако, если это необходимо, то можно. Как этот контекст используется в логике работы балансировщика?

В открытом доступе исходников нет.
Соглашусь, контекст в резолвере можно и не хранить и в текущей реализации контекст не используется активно внутри методов fiResolver. Он заложен для будущего расширения функционала. Например, если потребуется добавить периодическое обновление адресов или обработку долгих операций, контекст позволит контролировать их выполнение и отменять при необходимости.

У нас тоже какое-то время было подобное решение. Но потом поняли, что в кубере с несколькими az интереснее балансить еще и с учетом az-локальности, чтобы по возможности гонять трафик в пределах одной зоны (быстрее и дешевле). И по единственному имеющемуся адресу подключения резолвим его IP'шки и все az, считаем веса с учётом близости и знания своего az, и по полученному варианту уже делаем weighted-RR.

В нашем случае мы работаем с инфраструктурой, распределенной по нескольким ЦОДам, но без использования Kubernetes и его возможностей по обнаружению и учету зон доступности. Поэтому мы сосредоточились на статической приоритизации адресов через конфигурационные файлы, что подходило для наших текущих потребностей.

Sign up to leave a comment.

Information

Website
vk.com
Registered
Founded
Employees
5,001–10,000 employees
Location
Россия
Representative
Миша Берггрен