The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"сервер затыкается про большом MaxClients апача"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"сервер затыкается про большом MaxClients апача" 
Сообщение от vapetrov emailИскать по авторуВ закладки(??) on 25-Ноя-05, 23:27  (MSK)
Добрый день!

Прошу помочь с решением проблемы :(

Есть удаленный сервер FreeBSD 5.3
На нем прилично нагруженый апач, собран с
#define HARD_SERVER_LIMIT 2048

Если в конфиге апача стоит
MaxClients 768
все работает как часики.

Если ставлю MaxClients в бОльшее число, например 1024, то при большом наплыве посетителей сервер затыкается. То есть перестает отвечать вообще на любые запросы, включая ssh и т.п. Через некоторое время он очухивается и начинает отвечать, но весьма нестабильно - то есть отклик, то снова затык...

Вот прицесс затыка гляди из vmstat 5:
procs      memory      page                    disks     faults      cpu
r b w     avm    fre  flt  re  pi  po  fr  sr ad0 ad2   in   sy  cs us sy id
0 0 0 1402400 131740  657   8   2   0 416   0   8   0 2157 7967 3572 10 6 84
1 1 0 1399868 129416  457   5   1   0 686   0   5   0 1184 6380 1832  7  3 90
0 7 0 1396364 130048  152   0   0   0 199   0  25   0  586 2347 795  2  2 97
0 27 0 1398664 127904  230   2   1   0 106   0   5   0  698 1191 796  3  1 96
0 39 0 1399912 130864  137   0   1   0 319   0   0   0  543  508 627  0  1 99
0 27 0 1399060 129652  329   2   0   0 268   0   2   0  658 1451 728  3  2 95
0 17 0 1405192 125128  278   0   1   0 218   0   2   0  611 2392 745  2  2 96
0 11 0 1412048 122036  291   1   1   0 282   0   4   0  864 1691 991 11  3 86
3 14 0 1415164 120224  315   0   1   0 309   0   1   0  633 2104 696  4  2 94
0 27 0 1417168 118596  404   0   1   0 409   0  21   0  590 2707 751  4  2 94
(тут он заткнулся окончательно...)

Я вижу, что при затыке появляется некоторое количество процессов в состоянии b:
b       blocked for resources (i/o, paging, etc.)

Но выяснить, каких именно ресурсов ожидают процессы у меня не выходит :(

В системе 3 ГБ памяти,
kern.maxfiles: 12328
kern.openfiles: 1982 (обычно не больше 2000)
kern.maxproc: 6164 (затыки начинаются при количестве процессов >1000)
kern.maxfilesperproc: 11095
kern.maxprocperuid: 5547

Параметр load average во время затыка падает до значения близкого к 0.

Во время затыка удалось сделать ps awlx, процессы апача выглядят приблизительно так:
  UID   PID  PPID CPU PRI NI   VSZ  RSS MWCHAN STAT  TT       TIME COMMAND
   80 27050  7029   0   4  0  3012 2424 accept S     ??    0:01.98 /usr/local/apache/bin/httpd -f /usr/local/apache/conf/httpd-ligh
   80 27053  7029   0   4  0  2952 2372 sbwait S     ??    0:01.35 /usr/local/apache/bin/httpd -f /usr/local/apache/conf/httpd-ligh
   80 27208  7029   0   4  0  2952 2368 sbwait S     ??    0:00.75 /usr/local/apache/bin/httpd -f /usr/local/apache/conf/httpd-ligh
   80 27259  7029   0 -16  0  3012 2428 zoneli D     ??    0:01.44 /usr/local/apache/bin/httpd -f /usr/local/apache/conf/httpd-ligh


Может кто-нибудь подскажет, куда именно нужно смотреть, чтобы понять в чем проблема?


  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "сервер затыкается про большом MaxClients апача" 
Сообщение от Provokator Искать по авторуВ закладки(??) on 25-Ноя-05, 23:36  (MSK)
>Может кто-нибудь подскажет, куда именно нужно смотреть, чтобы понять в >чем проблема?

В
/var/log/messages

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "сервер затыкается про большом MaxClients апача" 
Сообщение от vapetrov emailИскать по авторуВ закладки(??) on 25-Ноя-05, 23:55  (MSK)
>>Может кто-нибудь подскажет, куда именно нужно смотреть, чтобы понять в >чем проблема?
>

>/var/log/messages


В /var/log/messages пусто. Никаких сообщений об ошибке.
Если же во время затыка далаю ребут, то появляются сообещния:
Nov 25 22:31:34  reboot: rebooted by root
Nov 25 22:33:17  kernel: pid 3476 (httpd), uid 80: exited on signal 11
Nov 25 22:33:17  kernel: pid 3463 (httpd), uid 80: exited on signal 11
(несколько десятков)

Если не ребутить, а дать серверу очухаться самому, то никаких сообщений вообще не появляется.

В логах апача также никаких сообщений нет.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "сервер затыкается про большом MaxClients апача" 
Сообщение от Charlie Root Искать по авторуВ закладки on 26-Ноя-05, 10:54  (MSK)
По признакам смахивает на диск. Большая очередь запросов на i/o на фоне практически нулевой LA. В любом случае, на такой сервер ставить обычный пошлый IDE (устройство ad) неразумно - разоритесь на SCSI массив из 3-5 дисков.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "сервер затыкается про большом MaxClients апача" 
Сообщение от vapetrov emailИскать по авторуВ закладки(??) on 26-Ноя-05, 12:39  (MSK)
>По признакам смахивает на диск. Большая очередь запросов на i/o на фоне
>практически нулевой LA. В любом случае, на такой сервер ставить обычный
>пошлый IDE (устройство ad) неразумно - разоритесь на SCSI массив из
>3-5 дисков.

Не, не диск...
Стоит SATA150 диск, который по данным systat при 768 одновременных запросах нагружен весьма мало - 10-20%: 10-20tps и ~1MB/sec
Большинство затребованой информации просто висит в кэше...

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "сервер затыкается про большом MaxClients апача" 
Сообщение от uldus Искать по авторуВ закладки(ok) on 27-Ноя-05, 00:05  (MSK)
>Если ставлю MaxClients в бОльшее число, например 1024, то при большом наплыве
>посетителей сервер затыкается. То есть перестает отвечать вообще на любые запросы,

Какие апачевские модули активны, нет ли не из комплекта апача ?

>включая ssh и т.п.

netstat -m что говрит в такие моменты ?
Сколько по netstat -an|wc ?
Похоже упирается в kern.ipc.somaxconn или kern.ipc.maxsockets


  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "сервер затыкается про большом MaxClients апача" 
Сообщение от vapetrov emailИскать по авторуВ закладки(??) on 28-Ноя-05, 21:06  (MSK)
Проблема решена простым увеличением kern.maxusers до 1024

Прошу прощение, что побеспокоил ламерским вопросом.
Спасибо все откликнувшимся :)

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру