it-swarm.it

Performance di Joomla su IIS

Abbiamo un sito Web ospitato su un server IIS 7.5.

Abbiamo una copia dello stesso sito Web su un server Apache2.2/Centos 6.x.

Su IIS il sito è più lento (circa due volte più lungo o anche più) e finora non siamo stati in grado di migliorare il tempo di risposta del server e/o la velocità del sito in generale (frontend e backend ).

Non conosco IIS, quindi è stato complicato sapere cosa fare (per me).

Finora abbiamo provato:

  • Qualche messa a punto di MySQL
  • Abilitare la compressione Gzip senza successo.
  • Estensione Jotcache (funziona ma il sito Web è ancora più lento rispetto ad Apache)
  • Disabilitazione o disinstallazione di estensioni non necessarie.
  • JCH Optimize pro
  • No PHP Cache (hai qualche idea?)

La mia ipotesi è che abbiamo bisogno/dovremmo lavorare sulla configurazione server/php/mysql, tuttavia non so se c'è qualcosa di speciale che dovremmo fare per migliorare le prestazioni su IIS e renderlo il più velocemente possibile di quello su Apache. Cosa possiamo fare per migliorare le prestazioni su IIS?

In questo momento il tempo di risposta del nostro server è superiore a 1,5 secondi sul sito Web IIS e circa 0,4 secondi su Apache.

8
Shaz

Tieni presente che PHP è generalmente più lento in Windows rispetto ai sistemi operativi simili a Unix. Le cose sono migliorate con la versione più recente (aggiornamento!) Ma c'è ancora una differenza misurabile.

Detto questo, ci sono due grandi passi da fare quando si ottimizzano i server PHP:

  1. Usa FastCGI

    Mentre fpm funziona solo su Unix, FastCGI funziona anche con IIS su Windows. Ecco un tutorial di Microsoft stesso su come farlo: http://www.iis.net/ imparare/applicazione Cornici/corsa-php-applicazioni-on-iIS/set-up-FastCGI-per-php

  2. Utilizzare una cache Opcode

    Anche in questo caso Microsoft ha coperto l'estensione WinCache .

Se hai ancora problemi di prestazioni dopo questi passaggi, ti consiglio di profilare sia la versione Windows che Linux. Puoi usare xhprof o Xdebug . Prova a scoprire se hai un problema con le prestazioni di PHP o MySQL. Un altro test che potresti fare è servire entrambe le copie dallo stesso server di database (deve essere un terzo server). Questo ti dirà rapidamente se hai un PHP o un problema MySQL.

3
Rouven Weßling