Portál AbcLinuxu, 23. dubna 2024 18:43


Dotaz: httpd: mnoho requestů - nutnost restartu

25.11.2009 20:38 Oswald | skóre: 1
httpd: mnoho requestů - nutnost restartu
Přečteno: 143×
Odpovědět | Admin
Dobrý den,

na serveru, kde běží httpd 2.2, mám následující problém:

Když přijde najednou mnoho requestů (30 - 100), tak vytížení CPU naroste na 100 %. Problém je, že se zátež nevrátí na původní hodnotu, ale zůstane na 100 procentech, httpd přestane requesty zpracovávat a jediná možnost je ho restartovat. Stává se to skoro každý den v běžném provozu a jde to simulovat pomocí např. `ab'.

Testoval jsem všechny možné hodnoty MaxClients/StartServers/MaxSpareServers, ale výsledek je při větším počtu současných požadavků vždy stejný (tj., i když je MaxClients třeba jenom 50, přičemž normálně zvládá zpracovávat i dvakrát tolik). Stává se to i tehdy, když ty požadavky jsou na menší statické HTML soubory.

Vypadá to tedy, že problém neni v konfiguraci, ale někde jinde. S dostatkem RAM problém není, ta zůstane i při zátuhu cca na půlce.

Relevantní řádky z httpd.conf:
Timeout 30
KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 250
<IfModule prefork.c>
	# aktualní nastavení, ale neúspěšné jsem testoval mnoho variant
	StartServers       80
	MinSpareServers    20
	MaxSpareServers   50
	ServerLimit      150
	MaxClients       150
	MaxRequestsPerChild  3000
</IfModule>
<Location />
        # Insert filter
        SetOutputFilter DEFLATE
        # Don't compress images
        SetEnvIfNoCase Request_URI \
                \.(?:gif|jpe?g|png)$ no-gzip dont-vary
</Location>
Budu vděčný za jakoukoliv radu.

Díky
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

25.11.2009 20:47 Oswald | skóre: 1
Rozbalit Rozbalit vše Re: httpd: mnoho requestů - nutnost restartu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zapomněl jsme napsat, že se tento problém začal objevovat po přechodu na Fedoru 12, na Fedoře 11 se něco podobného vyskytovalo tak jednou za dva měsíce. Návštěvnost ani další proměnné se nezměnily.
michich avatar 25.11.2009 21:46 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: httpd: mnoho requestů - nutnost restartu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkoušel jsi profilerem zjistit, s čím to má tak moc práce? (např. oprofile)
25.11.2009 22:22 Oswald | skóre: 1
Rozbalit Rozbalit vše Re: httpd: mnoho requestů - nutnost restartu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Díky za hint! Pomocí oprofile jsem zjistil, že za to může eaccelerator, který se asi moc nemá rád s PHP 5.3.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.