12345 Letture

Velocizzare l'esecuzione di script PHP con Zend Server CE

Con lo scopo di mostrare i benefici derivanti dall'azione di Zend Server CE abbiamo volutamente installato il pacchetto su un sistema operativo ormai piuttosto datato ovvero Windows XP SP3.
Sappiate che per evitare di "pasticciare" sul sistema operativo installato sulla propria macchina, potrebbe essere ragionevole (specie se si utilizza un personal computer dotato di un buon quantitativo di memoria RAM) orientarsi su una qualche soluzione per la virtualizzazione (vanno benissimo software gratuiti quali Oracle VirtualBox e Vmware Player). Nel nostro caso siamo ricorsi a Vmware Player.
Come già evidenziato, il vantaggio di questa soluzione deriva dal fatto che è possibile allestire un ambiente di sviluppo e di testing di una o più applicazioni completamente separato dal funzionamento del sistema "host".

Qualora l'approccio illustrato vi fosse congeniale, dopo aver installato il software per la virtualizzazione, si dovrà creare una nuova macchina virtuale ed avviarvi l'installazione del sistema operativo (noi abbiamo installato Windows XP, aggiornato al Service Pack 3).


Successivamente, completata l'installazione del sistema operativo, qualora si volesse usare il web server di Microsoft, lo si potrà installare manualmente. A meno che non sia già integrato nell'installazione di base del sistema operativo (versioni "server" di Windows), in XP è possibile procedere accedendo al Pannello di controllo, cliccando su Installazione applicazioni, su Installazione componenti di Windows, su Internet Information Services (IIS) quindi sul pulsante Dettagli.


Basterà quindi spuntare la casella Servizio web (i componenti File comuni e Snap-in Internet Information Services verranno automaticamente selezionati):


Per poter iniziare a lavorare immediatamente con pagine PHP, sarà sufficiente scaricare Zend Server Community Edition (CE) facendo riferimento ai link presenti in questa pagina. Si tenga presente che il primo link consente di scaricare la versione di Zend Server CE che integra PHP 5.2 (giunto ormai alla fine del supporto ufficiale) mentre il secondo quella che offre PHP 5.3.

L'installazione è avviabile facendo doppio clic sul file eseguibile prelevato dal sito web di Zend. Dopo aver accettato i termini di licenza d'uso, suggeriamo di optare per l'installazione "Custom" (Personalizzata) così da controllare i componenti che verranno caricati ed abilitati sul sistema.

Il componente Optimizer+, presente anche nella versione CE di Zend Server, consente di sveltire notevolmente le applicazioni PHP grazie ad un meccanismo di caching sul bytecode degli script. L'obiettivo consiste nell'evitare la rielaborazione e la compilazione del codice sorgente ad ogni richiesta proveniente da ciascun sistema client. Per migliorare ulteriormente le performance, il codice oggetto dell'attività di caching è conservato nella memoria condivisa ed eseguito direttamente da essa minimizzando così gli accessi in lettura da memorie più lente quali sono i dischi fissi.

I passi successivi consistono nel definire il server web che eseguirà gli script PHP (nel nostro caso Microsoft IIS):

Lasciando spuntata la casella Start working with Zend Server Community Edition, dovrebbe essere avviato il browser ed apparire immediatamente l'interfaccia di amministrazione del prodotto (risponde all'indirizzo locale http://localhost/ZendServer).

Dopo aver accettato le condizione del contratto di licenza d'uso e cliccato su Next, si dovrà impostare una password per la protezione dell'interfaccia web di Zend Server CE, registrarsi opzionalmente alla newsletter di Zend e cliccare su Finish.


Dopo pochi istanti, nel browser apparirà la finestra di amministrazione di Zend Server. Da qui è possibile verificare lo stato dei vari componenti del pacchetto, modificare l'impostazione delle direttive PHP, abilitare o disattivare estensioni con un semplice clic del mouse. Dal medesimo pannello di controllo, si può consultare i log degli errori PHP ed invocare la ben nota funzione phpinfo().

Sul sito di Zend, dopo aver completo l'installazione del prodotto è sempre bene verificare la disponibilità di eventuali "hotfix", aggiornamenti che solitamente risolvono problematiche molto importanti (al momento della stesura dell'articolo, Zend sta distribuendo un "hotfix" che permette di risolvere una pericolosa vulnerabilità di sicurezza implementando la modifica applicata nelle versioni 5.2.17 e 5.3.5 di PHP).

Nel caso in cui Zend Server, all'apertura del pannello di amministrazione, dovesse mostrare il messaggio d'errore "An internal application error has occurred. If this problem persists, go to the Zend Support Center at: http://www.zend.com/support-center", suggeriamo di creare un nuovo account dotato di diritti amministrativi (dal Pannello di controllo di Windows), aprire IIS, fare clic con il tasto destro sul sottosito ZendServer, scegliere Proprietà, la scheda Protezione directory, cliccare sul pulsante Modifica quindi disattivare la casella Accesso anonimo e spuntare Autenticazione integrata di Windows.

Adesso si dovrebbe poter accedere senza problemi al pannello di amministrazione di Zend Server CE digitando username e password dell'account utente appena aggiunto.
Gli utenti più esperti possono personalizzare i diritti d'accesso alla cartella \Programmi\Zend\ZendServer\GUI\application\data relativi ai vari account utente.


Supponiamo compaia invece l'errore che segue:
* The FastCGI process exited unexpectedly
* Error Number: -2 (0xfffffffe).
* Error Description: Unknown Error

Nel caso di Windows XP si dovrà assegnare i diritti in scrittura all'account IWAM_nomemacchina per la cartella riportata nel registro degli eventi (Pannello di controllo, Strumenti di amministrazione, Visualizzatore eventi) di Windows (in questo caso, C:\WINDOWS\TEMP):

Qualora aveste qualche dubbio o domande da porre, potete inviare un commento a quest'articolo oppure fare riferimento ai forum di Zend.

Velocizzare l'esecuzione di script PHP con Zend Server CE - IlSoftware.it - pag. 2