Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Переполнение логов
On Tue, May 20, 2008 at 02:48:57PM +0400, Volkov Oleg wrote:
> В сообщении от Tuesday 20 May 2008 12:46:52 Igor Sysoev написал(а):
> > On Tue, May 20, 2008 at 12:32:43PM +0400, Volkov Oleg wrote:
> > > Сегодня nginx переполнил мне весь /var сообщениями в
> > > какой-нибудь-сайт-errors_log :
> > >
> > > 2008/05/20 11:57:07 [alert] 28859#0: accept() failed (24: Too many open
> > > files) while accepting new connection on 0.0.0.0:80
> > >
> > > Соответственно увеличил worker_connections в 10 раз, пока вроде
> > > нормально. events {
> > > worker_connections 81920;
> > > use epoll;
> > > }
> > >
> > > Этого достаточно?
> >
> > Нет. Нужно увеличивать число файлов, выделенных процессу и в целом в
> > системе.
>
> А в linux это где ? Что-то пока не нашел.
>
> # cat /proc/sys/fs/file-max
> 204140
> # cat /proc/sys/fs/file-nr
> 3584 0 204140
>
> Число воркеров у меня 20. Если я правильно понимаю - у меня именно внутреннее
> ограничение worker_connections сработало.
Если бы не хватало worker_connections, то сообщение было бы
8192 worker_connections is not enough
> И еще, можно сделать чтобы по логам нгинкса было ясно как ограничитель
> сработал (внутренний или внешний) ?
А тут есть вся информация:
accept() failed (24: Too many open files) - это ошибка, возвращаемая ядром,
потому что в ядре кончились файлы.
--
Игорь Сысоев
http://sysoev.ru
|