Performances de Joomla sur IIS

8

Nous avons un site Web hébergé sur un serveur IIS 7.5.

Nous avons une copie du même site Web sur un serveur Apache2.2 / Centos 6.x.

Sur IIS, le site est plus lent (environ deux fois plus ou même plus) et jusqu'à présent, nous n'avons pas pu améliorer le temps de réponse du serveur et / ou la vitesse du site en général (frontend et backend).

Je ne connais pas IIS, donc ça a été compliqué de savoir quoi faire (pour moi).

Jusqu'à présent, nous avons essayé:

  • Quelques réglages MySQL
  • Activer la compression Gzip sans succès.
  • Extension Jotcache (ça marche mais le site est toujours plus lent que sur apache)
  • Désactiver ou désinstaller les extensions inutiles.
  • JCH Optimize pro
  • Pas de cache PHP (des idées?)

Je suppose que nous devons / devrions travailler sur la configuration serveur / php / mysql, mais je ne sais pas s'il y a quelque chose de spécial que nous devrions faire pour améliorer les performances sur IIS et le rendre aussi rapide que possible que celui sur apache . Que pouvons-nous faire pour améliorer les performances sur IIS?

À l'heure actuelle, le temps de réponse de notre serveur dépasse 1,5 seconde sur le site Web d'IIS et environ 0,4 seconde sur Apache.

Shaz
la source

Réponses:

3

Sachez que PHP est généralement plus lent sous Windows que sous les systèmes d'exploitation de type Unix. Les choses se sont améliorées avec la nouvelle version (mise à jour!) Mais il y a toujours une différence mesurable.

Cela dit, il y a deux grandes étapes à suivre pour optimiser les performances PHP de vos serveurs:

  1. Utilisez FastCGI

    Alors que fpm ne fonctionne que sur Unix, FastCGI fonctionne également avec IIS sous Windows. Voici un tutoriel de Microsoft lui-même sur la façon de le faire: http://www.iis.net/learn/application-frameworks/running-php-applications-on-iis/set-up-fastcgi-for-php

  2. Utiliser un cache Opcode

    Encore une fois, Microsoft vous a couvert avec l' extension WinCache .

Si vous rencontrez toujours des problèmes de performances après ces étapes, je recommande de profiler à la fois la version Windows et la version Linux. Vous pouvez utiliser xhprof ou Xdebug . Essayez de savoir si vous avez un problème avec les performances des PHP ou MySQL. Un autre test que vous pourriez faire est de servir les deux copies à partir du même serveur de base de données (doit être un troisième serveur). Cela vous indiquera rapidement si vous avez un problème PHP ou MySQL.

Rouven Weßling
la source