Apache mpm_worker oraz ServerLimit

Konfiguracja serwerów, usług, itp.
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Apache mpm_worker oraz ServerLimit

Post autor: velmafia »

Witam.

Mam problem ze zwiększeniem ilości dostępnych połączeń w Apache2, otóż robię tak jak dokumentacja pisze:
http://httpd.apache.org/docs/2.0/mod/mp ... erverlimit

i Moja konfiguracja pliku /etc/apache2/apache2.conf wygląda tak:

Kod: Zaznacz cały

(...)
<IfModule mpm_worker_module>
    StartServers        100
    MaxClients         2048
    MinSpareThreads     100
    MaxSpareThreads     200
    ThreadsPerChild      64
    ServerLimit          32
    MaxRequestsPerChild   0
</IfModule>
(...)
Niestety przy przeładowaniu apache z tą konfiguracją dostaje taki komunikat:

Kod: Zaznacz cały

# /etc/init.d/apache2 restart
Restarting web server: apache2WARNING: MaxClients of 2048 would require 32 servers,
 and would exceed the ServerLimit value of 16.
 Automatically lowering MaxClients to 1024.  To increase,
 please see the ServerLimit directive.
 ... waiting ..WARNING: MaxClients of 2048 would require 32 servers,
 and would exceed the ServerLimit value of 16.
 Automatically lowering MaxClients to 1024.  To increase,
 please see the ServerLimit directive.
.
Ktoś spotkał się z takim problemem i potrafi pomoc?

Wersja apache:

Kod: Zaznacz cały

# apache2 -v
Server version: Apache/2.2.9 (Debian)
Server built:   Jul 14 2009 20:40:18
PS.
Tak - potrzebuje tyle połączeń i maszyna wyrobi z tym (to odpowiedzi na przyszłość).

aloha
gajosew
Posty: 93
Rejestracja: 26 października 2007, 13:38
Lokalizacja: Bydgoszcz

Post autor: gajosew »

Kod: Zaznacz cały

 StartServers           20
    MinSpareServers        15
    MaxSpareServers       15
    ServerLimit         2048
    MaxClients          2048
    MaxRequestsPerChild   0
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Post autor: velmafia »

gajosew, Twoja konfiguracja to raczej do mpm_prefork jest bo nic do Thread'sow nie ma.
Ale tak też próbowałem (tzn. na mpm_prefork), i dalej podobne błędy, tylko z innymi wartościami :/

Po prostu nie rozumiem czemu nie działa zgodnie z dokumentacja, chyba że nie tu wpisuje dyrektywę: ServerLimit, ale już skończyły mi się pomysły gdzie mógłbym ją zmienić :/
gajosew
Posty: 93
Rejestracja: 26 października 2007, 13:38
Lokalizacja: Bydgoszcz

Post autor: gajosew »

Okej. Ale u mnie bez błędów ta konfiguracja idzie. No ale Twoje u mnie też wali takie sama błędy jak u Ciebie :-)
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Post autor: velmafia »

gajosew pisze:Okej. Ale u mnie bez błędów ta konfiguracja idzie. No ale Twoje u mnie też wali takie sama błędy jak u Ciebie :-)
korzystasz z mpm_worker czy mpm_prefork?
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

Dobra, znalazłem chwilę na przetestowanie Twojej konfiguracji na swoim serwerku testowym ;) Wnioski są następujące:
Dyrektywa ServerLimit musi być jako pierwsza ;-) i powinno to wyglądać tak:

Kod: Zaznacz cały

    ServerLimit         32  
    StartServers        100 
    MaxClients         2048 
    MinSpareThreads     100 
    MaxSpareThreads     200 
    ThreadsPerChild      64  
    MaxRequestsPerChild   0
Sprawdź czy i u Ciebie zadziała.
velmafia
Member
Posty: 1820
Rejestracja: 01 września 2006, 00:56
Lokalizacja: Las

Post autor: velmafia »

lessmian2, dzięki to rozwiązuje ten problem ;]

aloha
Kamil
ODPOWIEDZ