Балансировка нагрузки нескольких серверов Icecast

Я получил задачу балансировки нагрузки нескольких серверов Icecast для интернет-радио. Но после нескольких часов исследований я зашел в тупик и понятия не имею, как их сбалансировать.

Я пытался перенаправить пользователя в разные потоки, но некоторые программы, используемые нашими слушателями, не поддерживают перенаправления.

Другой вариант, который я имел в виду, был Round Robin DNS, но это не кажется хорошей идеей, так как некоторые клиенты не уважают TTL и кэшируют серверы в течение нескольких дней.

Если бы кто-нибудь мог отправить мне правильное направление, это было бы здорово! Спасибо за любую помощь заранее.

1 ответ

RR-DNS - самое простое и достаточно эффективное решение для этого.

Тот факт, что некоторые клиенты будут кэшировать результат немного дольше, статистически не имеет значения. Вы получите примерно равномерное распределение. В любом случае вы не хотите максимально использовать возможности сервера.

Кстати, я надеюсь, что у интернет-радио есть веские причины для балансировки. Один экземпляр Icecast легко масштабируется до 10000 слушателей (ограничено только пропускной способностью сети сервера). Я продолжаю смотреть радио со средним числом слушателей <200, обеспокоенным этим, и это просто напрасная трата усилий.

PS: Я немного удивлен, что все еще есть клиенты, которые выходят из строя 301/302, хотите назвать их? Возможно, мы захотим использовать их как Xiph.org / проект Icecast.

Другие вопросы по тегам