ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: fileli



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



 




Copyright © Lexa Software, 1996-2009.