Přihlášení

registrace ~ obnova hesla

MyEgo.cz › Pro PHP na Windows 2008 / IIS7 potřebujete Zend Server .

Pro PHP na Windows 2008 / IIS7 potřebujete Zend Server

Thursday, 09.04.09 - Webdesign, CMS - autor: Radek Hulán

Tento týden jsem v praxi otestoval hromadu různých kombinací PHP a akcelerátorů na Windows 2008 Serveru s IIS7. Pár poznatků o tom, co dělat a nedělat:

  • non-TS (non-thread-safe) verze PHP je na Windows s FastCGI (které se samo stará o thread-safe prostředí) zhruba o 30% rychlejší než TS verze, použijte pokud možno vždy non-TS verzi
  • verze PHP z PHP.net není v praxi to samé (i ve stejném vydání 5.2.9) co přímo od Zendu, ta z PHP.net vykazovala brutální memory leaks (php-cgi.exe nabobtnal během 2 hodin z 20MB na 300MB), zatímco verze od Zendu ne
  • eAccelerator je mírně pomalejší než Xcache - na Windows zvláště proto, že potřebuje TS verzi PHP (non-TS binárka není k dispozici)
  • eAccelerator není rovněž 100% stabilní a občas (10x denně), shodil celý php-cgi.exe proces a vyhodil segmentation fault (IIS7 jej ihned nahodí znovu, ale z logu je to vidět)
  • Xcache pro změnu nepracuje úplně korektně s pamětí při použití více FastCGI procesů a občas dochází k locknutí
  • oproti tomu Zend Optimizer+ je na Windows 2008 Serveru s IIS7 dokonale stabilní a server s ním funguje doslova božsky a opravdu rychle - vytížení IIS7 stroje kleslo po nasazení Zend Serveru při stejném množství uživatelů z cca 30% na 10% (oproti non-TS verzi bez akcelerátorů)

Vyplývá z toho v podstatě jedno - pokud provozujete opravdu rozsáhlý web s IIS7 + SQL Server 2008 (nesmírně výkonná a 100% stabilní databáze, ale o tom později), stáhněte si Zend Server, a případně i zaplaťte support. Vyplatí se to :-)

Mimochodem, žádné nahoře zmíněné řešení nevykazuje praktický problém, pokud testujete v pár desítkách až stovce uživatelů. Uvedené platí pro vysokou zátěž a desítky pageviews denně na uživatele.

 

Thursday, 09.04.09 - Webdesign, CMS - autor: Radek Hulán - 4884x

Komentáře:

  1. [1] krejcif 103.182.broadband9.iol.cz

    Nenahrazuje Zend Server jakožto aplikační server ISS?

    Z článku to vypadá jako kdyby to běželo najednou.

    Nebo se jednou pouze o ten zmíněný Zend Optimizer. Pak ale nechápu tu zmínku o Zend Serveru.

    Díky za vysvětlení.

    odpověz na tento komentář
    1. na komentář reagoval Radek Hulán — #2
    karma: 0 Thursday, 09.04.09, 20:34:51
  2. [2] Radek Hulán

    odpovídá na krejcif — #1 Zend Server má řadu komponent. My z něj používáme jen jeho verzi PHP, extensions, a pak zejména Zend Optimizer+ (bytecode kompilátor a optimalizátor skriptů), následně toto PHP běží jako FastCGI pod IIS7 a přes SQL Server Driver for PHP se napojuje na SQL Server 2008 databázi.

    odpověz na tento komentář karma: 10 Thursday, 09.04.09, 21:45:24
  3. [3] vrtakcz gprs8.vodafone.cz

    Zdraví mám také virutuální W2K8 s IIS7 koukal jsem se i po Zend Serveru ale našel jsem pouze x86 verzi a nedaří se mi najít x64... Nevíte kde se dá sehnat? Existuje vůbec? Nebo to funguje s x86 verzí?

    odpověz na tento komentář karma: 0 Saturday, 25.04.09, 09:43:38

Přidejte nový komentář:

Pro přidání komentáře a hlasování se musíte nejdříve zaregistrovat nebo přihlásit.

Pes hra