ПРОЕКТЫ 


  АРХИВ 


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[2]: rtsig



On Thu, 24 Nov 2005, Eugeny Zadevalov wrote:

IS> Правильно ли понимаю, что проблемы возникали на машинах с SMP ядром и
IS> при этом железо было SMP или HT ?
IS> А на UP ядрах не было ?

У меня практически не осталось машин с не HT или не SMP.
На UP ядрах у меня могло не проявиться ещё и потому что это 2-3
машины где nginx сильно не нагружался.

После первого падения(на SMP машине), ещё до патча вошедшего в 0.3.8,
я воткнул рестартилку nginx каждые 3 часа и оставил 5 воркеров.
Далее, после патча, рестартилку я оставил и эта SMP машина работала
без збоев.

Но соседняя HT машина после обновления и патча, стала падать даже
в течении этих 3-х часов между рестартами(-TERM), это повторялось
2 или три дня, после этого я поставить 1 воркер и отключил рестартилку,
результат: 5 дней аптайма без проблемм. Прямо посередине этих экспериментов
я уменьшал воркеры с 5 до 3-х эффекта не последовало сбои продолжались.

Что касается остальных машин где падал nginx там рестартилка подлечила,
а позже я просто выставил везде 1 воркер. Пока тьфу-тьфу-тьфу.

Думаю что проявляется это дело лишь в моменты возрастания нагрузок,
на той HT машине nginx падал исключительно в праймтайм пики, когда траф
поднимался с обычных 10-12 мегабит до 16-18.

Как всегда скорее всего от моего трепа толку мало, надеюсь удалось помочь хоть
чуть чуть более локализовать багу.

Возможно, этот патч поможет.


Игорь Сысоев
http://sysoev.ru
--- ../nginx-0.3.12.0/src/event/ngx_event.c     Sun Nov 20 18:58:13 2005
+++ src/event/ngx_event.c       Fri Nov 25 17:42:24 2005
@@ -255,7 +255,7 @@
     }
 
     if (ngx_accept_mutex_held) {
-        *ngx_accept_mutex = 0;
+        ngx_atomic_cmp_set(ngx_accept_mutex, ngx_pid, 0);
     }
 
     if (delta) {


 




Copyright © Lexa Software, 1996-2009.