The OpenNET Project / Index page

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

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

"Apache и нагрузка"
Сообщение от Алексей emailИскать по авторуВ закладки on 19-Сен-03, 10:13  (MSK)
Есть двух-процессорная машина с 3-х стами мегами памяти
Процы -- Celeron 350.
На ней Gentoo, Апач и почта в виде Exim-а и Courier-а.
Апач 2.0.47.
На нем поставочная конфигурация MPM
<IfModule prefork.c>
StartServers         5
MinSpareServers      5
MaxSpareServers     10
MaxClients         150
MaxRequestsPerChild  0
</IfModule>
<IfModule worker.c>
StartServers         2
MaxClients         150
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     10
MaxRequestsPerChild  0
</IfModule>
<IfModule perchild.c>
NumServers           5
StartThreads         5
MinSpareThreads      5
MaxSpareThreads     10
MaxThreadsPerChild  20
MaxRequestsPerChild  0
</IfModule>
Проблема в том, что если дать на апач нагрузку, например так:
httperf --hog --server www.server..dom --uri /ddd/ddd?what=ddd --num-conn=100 -ra 10 --timeout 5
То апач поднимает немеряное количество тредов/процессов и! самое главное
не убивает их по окончании нагрузки. Что в свою очередь ведет к тому, что
машина начинает еле-еле ворочаться.

Но дело осложняется тем, что нагрузка такая почти реальная. Тот же самый тест на апаче 2.0.44 но на фре с такой же конфигурацией MPM ведет себя нормально.

Что делать, как быть -- ума не приложу. Толи это 47-ой такой глючный, толи
руки, то ли что... Может сталкивался кто, подскажите...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Apache и нагрузка"
Сообщение от uldus Искать по авторуВ закладки on 19-Сен-03, 10:36  (MSK)
>На нем поставочная конфигурация MPM
>MaxClients         150

IMHO, для обработки 150 соединений твоих 300Мб ОЗУ на несколько порядков не хватит, поставь максиум 50.

>То апач поднимает немеряное количество тредов/процессов и! самое главное
>не убивает их по окончании нагрузки. Что в свою очередь ведет к
>тому, что
>машина начинает еле-еле ворочаться.

В своп залазит. Сколько именно процессов родится, твои настройки позволяют родить 150 процессов/тредов. Убивать он их сразу после окончания пика и не должен.

>руки, то ли что... Может сталкивался кто, подскажите...

Хочешь стабильности ставь 1.3.28.


  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Apache и нагрузка"
Сообщение от us.master emailИскать по авторуВ закладки on 19-Сен-03, 11:21  (MSK)
>>На нем поставочная конфигурация MPM
>>MaxClients         150
>
>IMHO, для обработки 150 соединений твоих 300Мб ОЗУ на несколько порядков не
>хватит, поставь максиум 50.

Хватит ещё как
>
>>То апач поднимает немеряное количество тредов/процессов и! самое главное
>>не убивает их по окончании нагрузки. Что в свою очередь ведет к
>>тому, что
>>машина начинает еле-еле ворочаться.
>
>В своп залазит. Сколько именно процессов родится, твои настройки позволяют родить 150
>процессов/тредов. Убивать он их сразу после окончания пика и не должен.
>
>
>>руки, то ли что... Может сталкивался кто, подскажите...
>
>Хочешь стабильности ставь 1.3.28.

Хочешь стабильности - читай маны и Bugtrack'и

# MaxRequestsPerChild: the number of requests each child process is
# allowed to process before the child dies.  The child will exit so
# as to avoid problems after prolonged use when Apache (and maybe the
# libraries it uses) leak memory or other resources.  On most systems, this
# isn't really needed, but a few (such as Solaris) do have notable leaks
# in the libraries. For these platforms, set to something like 10000
# or so; a setting of 0 means unlimited.
#
# NOTE: This value does not include keepalive requests after the initial
#       request per connection. For example, if a child process handles
#       an initial request and 10 subsequent "keptalive" requests, it
#       would only count as 1 request towards this limit.
#
MaxRequestsPerChild 500

-- 0 means unlimited
-- leak memory or other resources

И ещё:

# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Apache и нагрузка"
Сообщение от Алексей emailИскать по авторуВ закладки on 19-Сен-03, 12:44  (MSK)
Вот спасибо...
Как же я это проглядел....
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




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

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