Как бороться с java.net.SocketException: слишком много открытых файлов при отправке / перезагрузке?

У меня есть метод, который принимает URL-адрес и возвращает обещание [Материал]:

def getStuff(url: String): Promise[Stuff] = Http(...).map(...)

и я называю это большим (~ 1300 наименований) списком строк:

Http.promise.all(urls.map(getStuff)).apply

Некоторые из обещаний выполняются должным образом, но около ~50 приводят к "java.net.SocketException: слишком много открытых файлов". Что я делаю неправильно? Может быть, я должен использовать какой-то другой способ сделать эту задачу?

1 ответ

Решение

Это ограничение операционной системы.

См. http://wiki.magnolia-cms.com/display/WIKI/Too+Many+Open+Files например, для Linux

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