Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Apache przestaje odpowiadac - przekroczenie MaxClients
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish)
View previous topic :: View next topic  
Author Message
mcbarlo
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jul 2005
Posts: 130

PostPosted: Sun Jun 27, 2010 11:28 am    Post subject: Apache przestaje odpowiadac - przekroczenie MaxClients Reply with quote

Zauwazylem, ze czasami moj Apache sie zawiesza. W logach jako ostatni mam taki wpis:

Code:
[Sun Jun 27 05:33:47 2010] [error] server is within MinSpareThreads of MaxClients, consider raising the MaxClients setting
[Sun Jun 27 05:34:46 2010] [error] server reached MaxClients setting, consider raising the MaxClients setting


Jak widzicie taka sytuacja ma miejsce zupelnie poza szczytem co mnie dziwi tymbardziej.

Apache jest skompilowany z flaga threads, wiec moj modul mpm wyglada tak:

Code:
<IfModule mpm_worker_module>
        StartServers            2
        MinSpareThreads         25
        MaxSpareThreads         75
        ThreadsPerChild         25
        ServerLimit             80
        MaxClients              2000
        MaxRequestsPerChild     10000
</IfModule>


Troche mi sie wierzyc nie chce, ze 2000 klientow bylo polaczonych z serwerem jeszcze o tej porze...

Kombinowalem juz z konfigami i nie moge nic konkretnego wymyslic. Moze skompilowac Apache z -threads i uzywa preforka? Moze to cos zmienic?

Tak mam skompilowanego Apache (nie wiem czy jest sens te wszystkie moduly pakowac):

Code:
[ebuild   R   ] www-servers/apache-2.2.15  USE="ssl threads -debug -doc -ldap (-selinux) -static -suexec" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif speling status unique_id userdir usertrack vhost_alias -asis -authn_alias -cern_meta -charset_lite -dumpio -log_forensic -proxy_ftp -substitute -version" APACHE2_MPMS="-event -itk -peruser -prefork -worker" 0 kB


Bede wdzieczny za wszystkie sugestie.
Back to top
View user's profile Send private message
Core
n00b
n00b


Joined: 14 May 2007
Posts: 29

PostPosted: Mon Jun 28, 2010 9:20 am    Post subject: Reply with quote

Witaj, do pewnego czasu Apache (nie wiem jak Twój) były podatne na ataki typu slowloris, być może ktoś coś podobnego przeprowadza na Twoim serwerku. Ja na Twoim miejscu nie kompilowałbym Apache z wątkami, tylko zostawił starego, poczciwego i superstabilnego preforka a przed nim ustawiłbym jakieś reverse proxy.

Polecam haproxy, perbala lub SQUID'a. Nie do końca rozumiem, dlaczego rozwiązania tego typu dają tak wielki strzał wydajności, ale przykładowo jedna z często uczęszczanych domen tworzyła sobie ponad 100 wątków Apache, dawała mocno po loadzie serwera (bywało i koło 10-15) a przy tym tak samo jak u Ciebie, czasami się przytykała. Po zainstalowaniu perlbala mam 5 wątków Apache, bardzo niskie load a strona śmiga jak szalona. Jeżeli będziesz potrzebował adresów zewnętrznych w logach apache i w REMOTE_HOST to zainteresuj się modułem mod_rpaf :)
Back to top
View user's profile Send private message
mcbarlo
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jul 2005
Posts: 130

PostPosted: Sat Jul 03, 2010 10:42 am    Post subject: Reply with quote

Poczytam o tym ataku, bo cos mi sie wydaje, ze to bedzie przyczyna.

Zawsze serwer osiaga MaxClients w godzinach kiedy jest najmniejszy ruch. W szczycie jest ok.

Mam jeszcze jedno pytanie. Dlaczego jesli serwer osiagnie MaxClients sie poprostu wiesza. Nie odpowiada na zadne zapytania, nic sie nie da zrobic. Tylko restart apache i potem smiga.
Back to top
View user's profile Send private message
SlashBeast
Retired Dev
Retired Dev


Joined: 23 May 2006
Posts: 2922

PostPosted: Sat Jul 03, 2010 2:27 pm    Post subject: Reply with quote

mcbarlo wrote:
e jedno pytanie. Dlaczego jesli serwer osiagnie MaxClients sie poprostu wiesza. Nie odpowiada na zadne zapytania, nic sie nie da zrobic. Tylko restart apache i potem smiga.
Bo to apache. Generalnie jak ktos ma sobie apache bez reverse proxy to jest to po prostu jawna prowokacja.

Postaw na dobra, radziecka technologie, uzyj nginksa jako revproxy albo calkowicie przeniesc sie na niego z apache.
Back to top
View user's profile Send private message
bartmarian
Guru
Guru


Joined: 28 Nov 2005
Posts: 557

PostPosted: Sat Jul 03, 2010 8:45 pm    Post subject: Reply with quote

jak sądzę innym pomocnym rozwiązaniem może być:
Code:

iptables -A INPUT -p tcp -m tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 8 --connlimit-mask 32 -j REJECT --reject-with icmp-port-unreachable

lub DROP (z resztą nie tylko dla tej usługi...)
_________________
Człowiek bez religii jest jak ryba bez roweru.
Albercik się pomylił, prędkość światła to prędkość, wszechświat nie ma punktu odniesienia.
Perpetuum mobile - np. jowisz + jego księżyc, siły pływowe. Proste i niepraktyczne.
Back to top
View user's profile Send private message
mcbarlo
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jul 2005
Posts: 130

PostPosted: Sun Jul 04, 2010 6:21 am    Post subject: Reply with quote

No i dzis znow... 3:26 i Apache zdechl.

Czytalem jeszcze o mod_qos do Apache. Niestety dla amd64 jest jeszcze niestabilny, a nie chcialbym w serwerze takiego pakietu. No, ale jesli ktos z Was ma dobre doswiadczenia z nim zwiazane to czemu nie sprobowac? :)

Co do rev proxy to jest zagwozdka na kilka wieczorow, a w tej chwili mam bardzo malo czasu. Mysle, ze skorzystam narazie z firewalla. bartmarian powiedz mi prosze czy limit do 8 nawiazanych polaczen dobrales jakos doswiadczalnie? Nie jest to za malo?
Back to top
View user's profile Send private message
bartmarian
Guru
Guru


Joined: 28 Nov 2005
Posts: 557

PostPosted: Sun Jul 04, 2010 9:18 pm    Post subject: Reply with quote

w zasadzie u siebie mam 6 a nie 8, musisz testować czy stronka się prawidłowo otwiera i tyle...
_________________
Człowiek bez religii jest jak ryba bez roweru.
Albercik się pomylił, prędkość światła to prędkość, wszechświat nie ma punktu odniesienia.
Perpetuum mobile - np. jowisz + jego księżyc, siły pływowe. Proste i niepraktyczne.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum