Заметил проблему, зависает 1020 подключение на порт. Ждёт ответа и выпадает по тайм-ауту.
Предыстория.
Есть инет радио, висит на icecast2 вешает в один прекрасный момент, заметили что макс количество слушателей зависло на числе 1020.
Начали тестировать и выяснили, что 1019 подключений работают нормально, а вот с 1020 и больше ждёт ответ и вылетеает по тайм-ауту.
Сразу скажу что в конфиге указано 65000. В фаерволле все везде открыто, спецом sysctl.conf никто не правил на ограничения, сначала подумали что причина в дистрибутиве, на тестовой машине пробовал debian, centos, opensuse, ubuntu везде проблема одна та же.
Сам icecast держит и 4000 подключений, в этом можно убедится зайда на радио zaycev.fv в статистику.
Способ тестирования достаточно прост. wget слушали поток и писали его в /dev/null, потом tail мониторили логи от wget
Код: Выделить всё
#!/bin/bash
var0=0
LIMIT=1010
while [ "$var0" -lt "$LIMIT" ]
do
wget http://127.0.0.1:8000/play16 -O /dev/null -b
var0=`expr $var0 + 1`
done
echo
exit 0Может быть кто нибудь сталкивался с подобной проблемой, в инете по теме ничего найти не смог, возможно не правильно искал.
Специально слушали поток 16кбит сетевая карта была загружена на 30мбит из 100.
Пробовали подключаться 100 с локалхоста, и по 100 с других компов в сети, на 1020 все встало.
При 1020 подключений сам icecast не отвечает на свой веб-доступ.
В планах поднять перед icecast какой нибудь плеер или прокси, что бы ice отдавал один поток, а другая программу уже клиентам.
Щас собираюсь попробовать сделать больше 1020 подключений на nginx или pure-ftpd.