Webdesignérská komunita se asi shodne na tom, že nejrychlejší implementace PHP pro Apache, z možností CGI, FastCGI a modulu, by měl být právě modul, protože PHP modul pro Apache je psán pro nativní API Apache 2.0 serveru. Odtud tedy ona rychlost…
CGI naopak v teorii znamená, že CGI skript musí při každém použití PHP vyhledat
a parserovat php.ini,
spustit php-cgi.exe a natahovat spousty dll knihoven (extensions).
To je pomalé, nicméně, vzhledem k tomu, že jsou stejně všechny dll knihovny
v RAM paměti, a vzhledem k výkonu testovacího stroje (3.2GHz Pentium-4/HT
procesor, 1GB RAM), nebude to zpoždění až tak zásadní.
FastCGI ovšem CGI zlepšuje v tom, že při startu Apache serveru spustí definovaný
počet php-cgi.exe procesů v paměti a nechá je běžet po celou dobu,
a při požadavku na PHP interpret jim tento dotaz předá ke zpracování.
Tolik tedy teorie. Rozhodl jsem se v praxi otestovat, jak je Apache/PHP kombo rychlé v reálném provozu v režimech CGI, FastCGI a modul.
Testoval jsem funkci, která 1000x za sebou provede vytvoření dlouhého řetezce znaků. Práce s textem je základem PHP.




Copernic Desktop Search
