URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 3085
[ Назад ]

Исходное сообщение
"Максимальное кол-во одновременно открытых сокетов"

Отправлено MojaHead , 21-Июн-04 18:28 
При тестировании сокет-сервера (Perl) натолкнулся на странное ограничение:
под W2K максимальное кол-во одновременно открытых сокетов упорно держится на 157 штуках, под FreeBSD кол-во меняется от запуска к запуску и находится в районе 300. Методика тестирования такова: клиент (Perl) fork'ом создает 20 процессов, каждый из которых создает 50 соединений с сервером. И клиент и сервер запускаются на одной машине.
Кто-нибудь сталкивался с подобным ограничением? Или ошибка в методике тестирования? Вобщем принимаются любые советы...

Заранее благодарен.


Содержание

Сообщения в этом обсуждении
"Максимальное кол-во одновременно открытых сокетов"
Отправлено ACCA , 22-Июн-04 00:25 
>Кто-нибудь сталкивался с подобным ограничением? Или ошибка в методике
> тестирования? Вобщем принимаются любые советы...

Расскажу только про Linux:

ulimit -a


man getrlimit

обрати внимание на RLIMIT_NOFILE


"Максимальное кол-во одновременно открытых сокетов"
Отправлено MojaHead , 22-Июн-04 17:30 
>ulimit -a

Отдает инфу, что можно держать открытых ~ 7500 файловых дескрипторов.


"Максимальное кол-во одновременно открытых сокетов"
Отправлено ACCA , 23-Июн-04 02:31 
>>ulimit -a
>
>Отдает инфу, что можно держать открытых ~ 7500 файловых дескрипторов.

А что творится на приёмном конце? Кто обламывается первым - connect у клиента или accept у сервера?


"Максимальное кол-во одновременно открытых сокетов"
Отправлено MojaHead , 23-Июн-04 13:25 
>А что творится на приёмном конце? Кто обламывается первым - connect у
>клиента или accept у сервера?

Ну насчет того, как может "обломится" accept я не знаю, а так клиент начинает получать "Connection refused", т.е. выходит, что у сервера заканчиваются ресурсы... Но как же так, все серверы на которых я пробовал - на самом деле серверы...