Avatar billede Slettet bruger
21. december 2006 - 15:03 Der er 23 kommentarer og
1 løsning

Apache2 tweaking

Jeg kører apache2 på flere forskellige servere, og jeg har store problemer med, at serveren hurtigt bliver overbelastet.

Det hele kører fint indtil der er omkring 20 requests/sek på serveren. Da jeg brugte apache 1.3 fungerede det fint. Sjovt nok springer serveren fra under 1 til 20+ i load average når det ender galt. Hvordan bør jeg indstille nedenstående parametre for at undgå det?

Serverne er 3500+ mhz amd med 512 mb ram. Problemet eksisterer både på Debian Sarge og Fedora Core 6.1.

Timeout 120
KeepAlive On
MaxKeepAliveRequests 400
KeepAliveTimeout 5

<IfModule prefork.c>
StartServers      80
MinSpareServers  15
MaxSpareServers  20
ServerLimit      256
MaxClients      256
MaxRequestsPerChild  0
</IfModule>
Avatar billede mfalck Praktikant
22. december 2006 - 08:12 #1
uden at kende de nærmere forhold så kan man kun komme med generelle gode ideer:

en god måde at få lidt performance er at slå dns-opslag fra:
HostnameLookups off
og så lade log-analyse programmet lave de opslag.

En anden ting er at vælge den rette MPM-model. Prefork er ikke så effektiv (synes jeg) fordi den kører unden multi-threathing:

The server can be better customized for the needs of the particular site. For example, sites that need a great deal of scalability can choose to use a threaded MPM like worker, while sites requiring stability or compatibility with older software can use a prefork. In addition, special features like serving different hosts under different userids (perchild) can be provided.

Så jeg tror at worker ville være en bedre løsning - men så skal apache være konfigureret til at køre med den model.
Avatar billede Slettet bruger
22. december 2006 - 13:47 #2
Både hostnamelookups og access_log er slået fra.

Kan du forklare hvordan jeg skifter fra prefork til worker?
Avatar billede mfalck Praktikant
23. december 2006 - 12:07 #3
det kommer lidt an på hvordan du har installeret apache - som regel er det noget som slås til når man oversætter apache:

./configure ... --with-mpm=worker ...

Men der er mange distributioner som tillader at man slår det til runtime .. det kommer lidt an på hvilken distribution du kører. F.eks. debian er det med http://packages.debian.org/unstable/net/apache2-mpm-worker
Avatar billede Slettet bruger
03. januar 2007 - 08:12 #4
Jeg undskylder, men jeg er ikke ekspert nok til at få noget ud af dit svar. Har du mulighed for at forklare step-by-step hvordan jeg bruger den worker mpm? Eller er det for omfattende til at presse ned i et eksperten.dk svar? :)
Avatar billede mfalck Praktikant
03. januar 2007 - 08:25 #5
jeg skal gøre mit bedste :-) Hvordan har du installeret apache ?
Avatar billede Slettet bruger
03. januar 2007 - 09:02 #6
Jeg kører apache2 på både Debian og Fedora 5/6 servere i øjeblikket. I begge tilfælde bruges atp-get/yum til at installere.
Avatar billede mfalck Praktikant
03. januar 2007 - 11:01 #7
på debian ville jeg gætte på at det skulle være nok:

apt-get install apache2-mpm-worker
Avatar billede Slettet bruger
03. januar 2007 - 11:40 #8
Det ser ud til at virke! Bortset fra at php filer nu ikke eksekveres på serveren. I webbrowseren vises blot tekst.

Jeg har prøvet at installere php forfra via apt-get og jeg har prøvet at "aktivere" følgende linje i apache2.conf uden resultat:

AddType application/x-httpd-php .php

Forslag?
Avatar billede mfalck Praktikant
03. januar 2007 - 12:04 #9
Avatar billede Slettet bruger
03. januar 2007 - 12:31 #10
Tak for det, jeg fandt en mere passende how-to på debianhelp :) så nu kører det. Lægger du et svar?
Avatar billede mfalck Praktikant
03. januar 2007 - 12:50 #11
ok .. rart at høre :-)
Avatar billede mfalck Praktikant
03. januar 2007 - 12:50 #12
jeg gætter på at der må gælde noget tilsvarende for redhat ...
Avatar billede Slettet bruger
03. januar 2007 - 13:15 #13
Ja mon ikke :) ellers lægger jeg bare debian på alle servere...
Avatar billede Slettet bruger
03. januar 2007 - 13:41 #14
Æv, jeg var for hurtig. Hver gang jeg installerer worker og derefter php igen, så fjernes worker automatisk:

# apt-get install php5 libapache2-mod-php5 php5-curl php5-gd
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
  apache2-mpm-prefork
Suggested packages:
  php-pear
The following packages will be REMOVED:
  apache2-mpm-worker
The following NEW packages will be installed:
  apache2-mpm-prefork libapache2-mod-php5 php5 php5-curl php5-gd
0 upgraded, 5 newly installed, 1 to remove and 39 not upgraded.
Need to get 0B/2667kB of archives.
After unpacking 5788kB of additional disk space will be used.
Do you want to continue? [Y/n]

--------------------

Jeg kan slet ikke få lov til at installere php uden den vil fjerne worker...
Avatar billede mfalck Praktikant
03. januar 2007 - 13:46 #15
hvad hvis du installerer php5 først og så mpm-worker bagefter ?
Avatar billede Slettet bruger
03. januar 2007 - 13:49 #16
Så kommer fejlen med at php scripts ikke læses korrekt - de starter en tekst download i min browser hvor jeg kan se selve PHP koden... sjovt nok er det kun ved nogle scripts, og kun i nogle situationer, f.eks. hvis jeg poster til et script fremfor at hente det normalt.
Avatar billede mfalck Praktikant
03. januar 2007 - 14:21 #17
http://eightpence.com/running-multi-threaded-apache-with-php-on-ubuntu/

her forslås det at du oversætter PHP5 selv for at få det til at virke.
Avatar billede Slettet bruger
03. januar 2007 - 15:57 #18
Jeg får fejl når jeg prøver den guide.

Kan du "ansættes" til at lægge apache2-mpm-worker på en enkelt af mine debian servere og lave en how-to så jeg selv kan klare det fremover? Altså udenfor eksperten.dk og på timeløn i stedet for.
Avatar billede mfalck Praktikant
03. januar 2007 - 19:42 #19
ja - jeg vil gerne kigge på det og se om det ikke er muligt at få det til at virke.
Avatar billede mfalck Praktikant
03. januar 2007 - 19:42 #20
men det skal nok være på en testmaskine som jeg kan "vride armen rundt på" :-)
Avatar billede Slettet bruger
03. januar 2007 - 19:53 #21
Jeg burde kunne stille en til side som du kan lege med uden risiko :) jeg vender lige tilbage.
Avatar billede mfalck Praktikant
03. januar 2007 - 20:21 #22
ok :-)
Avatar billede Slettet bruger
04. januar 2007 - 22:37 #23
Vil du sende mig dine kontaktoplysninger på mbp@netomia.dk?
Avatar billede mfalck Praktikant
05. januar 2007 - 08:05 #24
hej igen - det skal jeg nok. Ellers kan jeg kontaktes på info - mfalck.dk .. der skal bare sættes et @ ind
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester