fileli

Igor Sysoev is at rambler-co.ru
Tue Aug 28 20:43:38 MSD 2007


On Tue, Aug 28, 2007 at 07:12:52PM +0400, Монашёв Михаил wrote:

> > Это filelist lock. Как от него избавиться - не знаю.
> > Насколько я понимаю, используется unix sockets ?
> 
> Нет. nginx через unix sockets ни с кем не работает. Он только статику
> отдаёт и Апачам динамику проксирует. Больше ни с кем не работает...

Ну в общем, это обычный лок, на zonelimit совсем не похоже.

> Кстати, а что с нехронологическими логами? Почему они пишутся так
> странно?

Когда nginx получает события из ядра, он проверяет время и если
секунды изменились, то он создаёт новые строки для error-лога, http-лога
и прочая. Эти строки используются до следующего получения событий из
ядра (при условии, что секунды снова изменятся).

При этом возможны ситуации, когда один процесс получил события
в 00:00:00.99, поэтому он использует строку "00:00:00". В процессе
обработки запроса он делает что-то вроде open()/fstat()/sendfile()/close()
и если файл небольшой, то запрос завершится без дополнительного
получения событий из ядра. В лог попадёт строка "00:00:00".
В любой момент рабочий процесс может прерван другим рабочим процессом,
особенно, если первый пошёл на диск за файлом (~20ms). Второй рабочий
процесс запишет в лог "00:00:01". А потом в лог будет писать первый процесс.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list