WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Apache optimering sept 2010 (igen) (https://www.wn.se/forum/showthread.php?t=1043901)

Azone 2010-09-19 14:24

Citat:

Ursprungligen postat av Clarence (Inlägg 20370050)
Har du hyfsat med minne i servern ser jag ingen poäng med att byta ut apache mot en mer lightweight server med bara 10k sidvisningar om dagen. Speciellt inte då du behöver sätta dig in i en ny servers inställningar och egenheter.

Nej, jag känner samma sak, min trafikvolym borde apache klara, jag tror det är mer ett tuning-problem (kanske annat också).

Nu går servern bra i 6 timmar sen blir den seg och låser sig så småningom (upplevs som låst). Någon som har någon idé?

Jag har ökat MaxRequestsPerChild till 256 eftersom det enligt några webbsidor verkar vara standardvärde. Är 256 ok där?

Jag har också installerat eaccelerator (php-cache), men vet inte hur man verifierar att den verkligen fungerar. Och som sagt server går bra i 6-12 timmar innan det kör ihop sig.

Jag vet inte heller hur jag kan spåra eller ev se vad som går tungt heller.
Har inte hunnit sätta mig in i det men tvingas nog göra det nu. Svårt också när man inte har ett GUI.

mvh
Azone

KristianE 2010-09-19 14:44

Vilket OS kör du?

Azone 2010-09-19 16:07

Följande konfig:

Virtual Machine at City Cloud
CPU 1
Memory 2 Gbyte
Debian 5.0.6 64 bit
Dell EqualLogic Raid storage
Apache2 (prefork), php5, mysql (+eaccelertor)

memory_limit = 256M (php.ini)

Kan dessa parametrar förbättra något, vet ej vilka värden jag bör använda.
realpath_cache_size = 2M (satte den till 2M nyss)
realpath_cache_ttl = 120 (default)

KristianE 2010-09-19 16:27

Ah, sorry. Jag var blind. Har du testat att lägga databasen
på en egen server?

abergman 2010-09-19 19:34

Citat:

Ursprungligen postat av Clarence (Inlägg 20370080)
För att Lighttpd för ett par år sen hade en del minnesläcke-problem ska man inte välja det. Men att Nginx också hade minneläckor vid ungefär samma tidpunkt som dessutom var rätt mycket värre ... det ska inte ha inverkan?

Jag sa "har" som i att det har varit så tidigare, och med det tycker jag att det är underförstått att det inte behöver vara så längre. Jag har ingen aning om hur Lighttpd presterar idag, men när jag använde den så var jag inte nöjd och bytte till Nginx, sedan dess har jag inte orkat bry mig om att testa Lighttpd. Det är väl upp till TS att ta reda på om Lighttpd eller andra servrar är något han kan tänka sig att använda?

Notera "imho" dvs, att det är min åsikt och inte fakta.

SimonP 2010-09-20 13:11

Stäng av moduler som inte behövs, t.ex:

httpd.conf:
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule auth_ldap_module modules/mod_auth_ldap.so
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule speling_module modules/mod_speling.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so

perl.conf
#LoadModule perl_module modules/mod_perl.so

python.conf
#LoadModule python_module modules/mod_python.so

Verifera att eAccelerator fungerar! Följer med en fil för detta: control.php

Varför 256MB i PHP mem_limit? Det är väldigt mkt.

Prova sänk värdet i KeepAliveTimeout:en.

Clarence 2010-09-20 13:32

Vad är det som gör att du tror att apache är problemet? Försök först att identifiera exakt varför det hänger sig.

Kolla vilka, om några, processor som drar minne/CPU när det hänger sig. Titta på exekveringstider för PHP-scripten. Se om du har många SQL-queries som väntar på lås (väldigt vanligt problem för MyISAM-tabeller).

Har du någon krävande bildbearbetning eller liknande? Annars kan du sänka memory_limit rejält för att utesluta att något PHP-script snor åt sig allt minne med ett par träffar. I annat fall kan en utskrift/loggning av max-minnet från PHP vara av intresse (memory_get_peak_usage()).

Clarence 2010-09-20 13:43

Citat:

Ursprungligen postat av abergman (Inlägg 20370151)
Jag sa "har" som i att det har varit så tidigare, och med det tycker jag att det är underförstått att det inte behöver vara så längre. Jag har ingen aning om hur Lighttpd presterar idag, men när jag använde den så var jag inte nöjd och bytte till Nginx, sedan dess har jag inte orkat bry mig om att testa Lighttpd. Det är väl upp till TS att ta reda på om Lighttpd eller andra servrar är något han kan tänka sig att använda?

Notera "imho" dvs, att det är min åsikt och inte fakta.

Min poäng var just det, att tidigare problem med minneläckor inte borde påverka valet (om de inte varit konstant återkommande förstås). Apache, lighttpd och nginx har alla haft minneläckor - och patchat dom.

Azone 2010-09-20 19:18

Tack för alla bra svar! Verkligen uppskattat, jag har lärt mig massor :-)

Nu har det fungerat rekordlänge (över 15 timmar) med "hyfsad" prestanda och utan behov av server-omstart.

Senaste åtgärderna (efter en massa tester, läsande här (tack) och googlande)
- Jag bytte eccaelerator från "php-läge" till "zend-läge" i php.ini
- Satte ett värde på "eaccelerator.shm_size="" som var noll (0) default men då "åt" den minne i längden, när jag satte den till "16" stanade minnes-läkaget. Trots att noll anses vara default och att man inte skall behöva ändra värdet (??). Såg dock att "16" var ett vanligt värde och nu är det stabilt.
- Jag fortsätter med apache2 eftersom det i sig inte verkar vara det största problemet.
- Jag har verifierat att eccaleerator fungera både med phpinfo() + sett att cachefiler skapas i tmp dir.
- Jag ökade realpath_cache_size=8M (från 2M i php.ini)
- Kör "saidar" för att kolla minnet ibland (fungerar bra, men vad är standard för denna typ av koll?)
- Enl Saidar ligger RAM-minnesförbrukning konstant på ca 800M-1G (av 2G), oavsett den belastning jag sett hittills (ganska många inloggade och aktiva).

Nu verkar det vara stabilt iaf, och det är nog massor med tweaks som jag kan göra för att trimma systemet mer, och det kommer jag göra, men om detta håller sig känner jag mig lugn och måste koncentrera mig på lite annat ett tag. Men skall ta bort en del av de onödiga mods'en som några av er föreslagit ovan. Samt se om jag kan minska memory_limit lite. Men vi har krävande bildhantering ibland iaf. Därav det höga memory_limit.

Jag har lite annat att ta tag i vad det gäller säkerhet, mysql-tweaks, filsystem, mailsystem och mycket mer (som jag förmodligen inte en vet än).

Tack och bock

mvh
Azone

Adrian B 2010-12-22 21:59

Skulle vara kul att höra hur det gått sedan dess, hitta några nya optimeringar? (Är främst nyfiken på hur väl Drupal fungerar hos City Cloud.)


Alla tider är GMT +2. Klockan är nu 16:03.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson