Avatar billede joggy Nybegynder
10. marts 2008 - 23:37 Der er 5 kommentarer og
1 løsning

PHP + Apache vs IIS

Hej

Er der nogen der kender til sider med benchmarks på PHP hastigheder ved brug af PHP på henholdsvist Apache og IIS.

Sidder og udvikler på en side i PHP på en server der kører IIS. Er det mig der er old-school og tænker, at det bør man ikke gøre, eller er der vitterlig ikke den store forskel længere. Kan i hvert fald ikke få dem som står for serveren til at installere Apache.. Men måske jeg kunne ændre deres mening, hvis der nu var nogle fordele og facts jeg kunne præsentere for dem.
Avatar billede arne_v Ekspert
11. marts 2008 - 01:50 #1
Hvis vi kigger lidt på hvad der sker i de forskelle lag:

web server: læse request fra socket, sende videre til PHP, hente svar fra PHP og skrive tilbage til socket

PHP: fortolke og udføre din PHP kode

database: læse data fra disk og evt. opdatere data på disk

så vil jeg tro at i langt de fleste tilfælde vil det være PHP og databasen der bruger
ressourcerne og ikke web servereb.

Og at der derfor ikke bør være de store performance forskelle på IIS og Apache for
et PHP site.
Avatar billede joggy Nybegynder
11. marts 2008 - 10:07 #2
Hele forskellen det er jo netop når PHP'en bliver fortolket.. Da IIS bruger CGI til at gøre det.. Ved at, den gamle CGI var ikke særlig hurtig, men ved ikke hvordan det er blevet med brugen af FastCGI.
Avatar billede arne_v Ekspert
12. marts 2008 - 00:42 #3
CGI er den protokol som bruges til at overføre diverse HTTP headere til scriptet. Det
kan ikke koste meget i tid. Imidlertid vil CGI starte en process per request og det koster.

Men men men man kan altså også bruge PHP som ISAPI filter og det starter ikke en
process per request og performer derfor godt. Ulempen er at dårligt kodede moduler der
ikke er thread safe kan få serveren til at gå ned.

FastCGI bruger CGI protokollen men genbruger den startede process til flere requests.
Avatar billede joggy Nybegynder
12. marts 2008 - 09:42 #4
Når du siger process, er det så sådan nogle man kender det fra normalt i windows.. Altså at man kan se den under process-styring?

Dem jeg laver denne side for, brokker sig nu over meget meget høj CPU load på deres gamle side.. Kan dette skyldes det, at de kører PHP igennem FastCGI?

Fordi så vil det jo ikke hjælpe meget med den nye side, uanset om PHP'en og MySQL'en er bedre kodet.. Hvilket den selvfølgelig er :)
Avatar billede arne_v Ekspert
13. marts 2008 - 00:53 #5
Ja.

----

Jeg tvivler. Hvormange requests per sekund ?
Avatar billede arne_v Ekspert
08. juni 2008 - 06:02 #6
all set ?
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

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