Имеет ли библиотека erlang TCP/IP некоторые ограничения? Я сделал некоторые поиски, но не могу найти окончательных ответов.Максимальное количество одновременных открытых портов Erlang?
Я установил переменную среды ERL_MAX_PORTS в 12000 и настроил Yaws для использования неограниченных соединений.
Я написал простое клиентское приложение, которое подключается к appmod, который я написал для Yaws, и я тестирую количество одновременных подключений, одновременно запуская X-число клиентов.
Я считаю, что, когда я получаю около 100 клиентов, сервер Yaws прекращает принимать больше TCP соединений и ошибки клиента с
Error in process with exit value: {{badmatch,{error,socket_closed_remotely}}
Я знаю, что должно быть ограничение на количество открытых одновременных соединений , но 100 кажется очень низким. Я просмотрел всю документацию по рысканиям и удалил все ограничения на соединения.
Это на 2,16 ГГц Intel Core 2 Duo iMac, работающем на Snow Leopard.
Быстрый тест на машине Vista показывает, что я получаю те же проблемы при примерно 300 соединениях.
Является ли мой тест необоснованным? То есть Неужели глупо открывать одновременно 100 одновременных соединений для проверки параллельности параллельности Yaws?
Спасибо.
Не указывает ли 'socket_closed_remotely', что проблема в клиенте? – Zed
Обновлен мой ответ после редактирования, возможно, это потому, что вы открываете их все одновременно. – stacker
Zed: сообщение об ошибке со стороны клиента, поэтому Yaws закрывает сокет. Я не вижу ничего, что можно было бы зарегистрировать в Yaws. – ckovacs