Вы не зашли.

#1 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 19143
На форуме: 1864 час.
Репутация: 1255 (99%) ±
Инфо  Вебсайт  Написать

НОВЫЙ СЕРВЕР ВЕЩАНИЯ  (замена ICECAST2)

Возможно вы заметили что последнее время не так много нововведений.
Всё потому, что мы решили разработать свой собственный СЕРВЕР трансляций вместо использования IceCast2.
Базовая реализация IceCast2 больше не удовлетворяет требованиям нашему функционалу, а добавлять новые функции в него - проблематично. Так как ранее мы разработали свой собственный Auto-DJ разобрав все протоколы IceCast2 и MP3 вещания, разработка сервера показалась физически возможной. После 3х месяцев работы у нас появилась первая рабочая версия сервера с базовым функционалом - пришло время тестирования. Вводить в использование новый сервер мы будем очень осторожно и постепенно, на начальном этапе возможны проблемы с вещанием которые мы быстро исправим. Сначала мы запустим LIVE сервер вещания, а потом заменим все сервера со слушателями.

Что изменится с приходом нового сервера:

- обработка неверной кодировки метаданных LIVE вещания теперь ещё лучше (автоматизировано)
- стабильность LIVE вещания станет лучше, при проблемах с трафиком DJ не будет отключен сразу
- мгновенное определение LIVE вещания и переключение LIVE <=> Auto-DJ
- без проблем с радиобосс: неопытные DJ ставят вещание в радиобосс на паузу, тогда сервер начинает отключать диджея каждые 10 секунд (исправлено)
- больше не нужно будет настраивать отдельный сервер статистики в SAM BROADCASTER И RADIOBOSS, статистику выдаст наш сервер по умолчанию
- имя вещающего DJ теперь будет строго браться из раздела Пользователи, рекомендуется каждому диджею зарегистрироваться (теперь это возможно), соответственно и статистика будет у каждого DJ пользователя своя личная
- улучшенный сбор статистики, оперативнее и больше данных
- адаптивное перенаправление слушателей на другие сервера и проксирование потоков откроет возможность масштабировать 1 радио на более 10000 слушателей одновременно (не реализовано, но теперь возможно)

Этапы тестирования или как не поймать проблем

1. OK Наше тестирование вещания и прослушивания с разных программ
2. OK Автоматизированное тестирование нагрузки от более 1000 LIVE вещаний и 10000 слушателей
3. OK Пользовательское тестирование вещания и прослушивания с разных программ/устройств
4. OK Частичная параллельная интеграция - как вторичный LIVE сервер
5. OK Попытка запуска и замена старого IceCast2 на наш новый сервер
6. Отладка ошибок и оптимизация работы сервера для LIVE вещания под нагрузкой
7. OK Запуск первого транслирующего сервера для слушателей
8. Отладка ошибок и оптимизация работы вещающего сервера под нагрузкой (need intro and kill)
9. Замена всех Icecast2 серверов вещания на наши собственные - стабильные сервера!

Как вы видите мы медленно подошли к 3му пункту где требуется ваше - пользовательское тестирование.
Необходимо проверить стабильность и правильность работы LIVE вещания и трансляции со всех и на все возможные программы и устройства (включая браузеры). Информация для подключения к новому серверу скоро станет доступной в разделе Информация в панели радио.

Тема открыта для обсуждения, необходимо ваше мнение по данной разработке.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#2 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 19143
На форуме: 1864 час.
Репутация: 1255 (99%) ±
Инфо  Вебсайт  Написать

Сегодня проведена эмуляция нагрузки от слушателей на сервер

При тестировании использовалось 1 радио которое вещало в MP3 формате 192kbit. При тестировании использовался локальный скрипт который совершает много одновременных HTTP подключения и скачивает поток. При всех тестах лагов в звучании не обнаружено, однако при последнем тесте 10000 слушателей, подключение к серверу длилось вместо 1 секунды почти 2 секунды. Память с увеличением слушателей увеличивалась и не освобождалась, но если отключить слушателей и подключить заново, то она стабилизировалась. Нагрузка на процессор примерно в 2 раза меньше чем от сервера IceCast2, но условия работы не равные.

Результаты тестирования

listen_stream: 100
CPU: 0.3 - 0.7%,
MEM:  54 MB

listen_stream: 500
CPU: 2.7 - 3.3%,
MEM:  50 MB

listen_stream: 1000
CPU: 6.0 - 6.7%,
MEM:  55 MB

listen_stream: 2000
CPU: 10.0 - 12%,
MEM:  190 MB

listen_stream: 3000
CPU: 16 - 18%,
MEM:  310 MB

listen_stream: 5000
CPU: 28 - 30%,
MEM:  320 MB

listen_stream: 7000
CPU: 40 - 42%,
MEM:  335 MB
Network: 1300mbit

listen_stream: 10000
CPU: 59 - 65%,
MEM:  424 MB
Network: 1800mbit

При 128kbit вещании:
listen_stream: 10000
CPU: 55 - 57%,
MEM:  514 MB
Network: 1300mbit

От слушателей нагрузка не очень большая.
Тестируем нагрузку от большого кол-ва вещающих станций.
------------------------------------------------------------------

500 станций вещающих в разных форматах
CPU: 6%
Проблемы не выявлены.

1000 станций
CPU: 12%
Некоторые станции начинают отключаться.
Причина пока не выявлена. (не критично)

Данные по вещанию не точные, требуется больше тестирования разными способами.
Важная особенность. Если вещающий передаёт много мелких пакетов, то нагрузка значительно увеличивается. (ffmpeg)


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#3 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 19143
На форуме: 1864 час.
Репутация: 1255 (99%) ±
Инфо  Вебсайт  Написать

Запуск первого сервера версия 1.0

Несколько дней назад был запущен наш первый сервер listen5 в работу для новых клиентов. В реальных условиях нагрузка на процессор всё таки выше, примерно как у icecast, расход памяти остался таким же как и был при тестах выше.
Сегодня: 1500 слушателей 192kbps и 30 радио создают среднюю нагрузку CPU 18% / MEM 50mb
Скорее всего потому что тесты выше проводились на новейшем Xeon процессоре с 4200Mhz, а этот сервер с процессором 3600Mhz.
Поэтому можно сказать что наш сервер и сервер Icecast2 создают примерно одинаковую нагрузку.
В любом случае мощностей сервера хватает чтобы спокойно обрабатывать 5000 слушателей, а больше и не требуется.
Следующим этапом мы будем переключать другие вещающие сервера и если будет всё отлично то и LIVE сервер.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#4 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 19143
На форуме: 1864 час.
Репутация: 1255 (99%) ±
Инфо  Вебсайт  Написать

Преимущества нашего сервера на данный момент - которые себя уже показали - версия 1.1

1. У одного радио на тарифе PRO были постоянные проблемы с обновлением метаданных - названий песен на сервере.
Ничего не помогало, что-то было не так с Icecast в совокупности с некоторыми треками этого радио. (собственной звукозаписи)
Однако смена сервера Icecast на наш сервер сразу же решила эту проблему, что даёт ещё 1+ нашему серверу.

2.Также протестировали новую фишку нашего сервера при которой слушателей никогда не выкидывает с сервера.
Можно перезагружать АвтоDJ и отключаться от LIVE вещания сколько угодно, радио переходит в Оффлайн режим, но как только возобновляется вещание, все слушатели сразу же получают новый поток - все остаются подключены. В случае с Icecast, существует fallback на тишину, однако по непонятным причинам иногда все слушатели вылетают с потока.


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

#5 

Dimitry
Ниндзя по зачистке капусты
Имя: Дмитрий
Откуда: Германия
Зарегистрирован: 2003-04-18
Сообщений: 19143
На форуме: 1864 час.
Репутация: 1255 (99%) ±
Инфо  Вебсайт  Написать

Доработки сервера и исправление ошибок - версия 1.2

- улучшение обработки при подключения слушателя, более быстрый старт прослушивания
- поддержка больших файлов приветствия при подключении слушателя длительностью до 1 минуты
- адаптивная обработка приветствия, теперь вне зависимости от длинны приветствия, поток продолжает играть с буферизацией в 5 сек
(раньше задержка равнялась длине приветствия, которое могло быть более 20 сек)


Моя анкета на vmeste.eu
Если сообщение Вам помогло, отблагодарите участника повысив его репутацию!
PS. То, что нас не убивает, то делает нас сильнее!

Неактивен

[ Generated in 0.007 seconds, 11 queries]