IonianWind
@IonianWind

Как победить Error: accept EMFILE?

Проблема в следующем:

Стоит node 0.8.14, запущен скрипт, использующий sockjs

Сервер перезапустили, и теперь постоянно сыпется в лог скрипта следующее:
events.js:71
        throw arguments[1]; // Unhandled 'error' event
                       ^
Error: accept EMFILE
    at errnoException (net.js:769:11)
    at TCP.onconnection (net.js:1017:24)


После перезагрузки я проставил
ulimit -u 1048576
ulimit -n 1048576


Эти значения были до перезагрузки


Вот вывод ulimit -a на данный момент
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 509680
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1048576
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1048576
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited


Система CentOS 6 x64

Гуглил, пока не нашел решения
  • Вопрос задан
  • 5077 просмотров
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Т.е. просто набрали в рутовой консоли?

ulimit действует на текущее приложение и его потомков, на другие запущенные приложения и на приложения запущенные из других мест он не действует.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы