Que puis-je faire, à part utiliser un plugin de cache comme jotcache, pour améliorer le temps de réponse du serveur de mon site Web?
J'ai déjà supprimé tous les modules, plugins et composants d'articles inactifs, puis-je faire autre chose pour l'améliorer?
Je parle du temps avant que le client (navigateur) ne reçoive une réponse à sa demande . Et pas l'heure de chargement de la page.
php
cache
performance
server-response-time
hosting
web-tiki
la source
la source
Réponses:
Vous pouvez prendre plusieurs mesures pour augmenter les performances côté serveur. Notez que certains d'entre eux ne fonctionneront pas avec la plupart des hôtes partagés. Pour de grandes performances, vous avez généralement besoin d'un contrôle plus fin.
Comme pour toute optimisation, vous devez mesurer son effet sur les performances de votre site. Pour les optimisations de base, des outils comme PageSpeed et YSlow sont utiles (je recommande les versions de Firefox). Pour une compréhension plus approfondie, vous devrez mesurer les temps de réponse réels de votre système en direct sur une période de temps.
PHP
Activer la mise en cache Opcode
C'est probablement la plus grande chose que vous puissiez faire pour augmenter les performances de votre site. Je recommande d'utiliser OpCache ou APC . La configuration de ces caches peut être modifiée pour des performances encore plus grandes en fonction des besoins spécifiques des serveurs et des sites, mais l'installation est déjà un énorme coup de pouce.
Mettre à jour la version PHP
Des versions PHP plus récentes viennent régulièrement avec des améliorations de performances. De plus, il existe un certain nombre de cas où Joomla peut utiliser un meilleur code lors de l'exécution sur une version PHP plus récente. À ce jour, vous ne devez pas utiliser une version PHP plus ancienne que PHP 5.4 si vous vous souciez des performances.
Paramètres PHP
Sur les anciennes versions de PHP (<= 5.3), veillez à désactiver
register_globals
etmagic_quotes_gpc
à gagner des performances gratuitement. Sur PHP> = 5,6 passeralways_populate_raw_post_data
à -1.Extensions PHP
Joomla contient du code pour contourner les extensions PHP manquantes. Ce sera toujours plus lent que ces extensions. Pour une amélioration de la performance décente installer les extensions suivantes:
mbstring
,zip
,ftp
Serveur Web
Activer gzip
L'activation de la compression côté serveur échange la bande passante pour les ressources CPU. Pour la plupart des sites, c'est le bon appel. Faites attention à ne compresser que les données texte, la compression des données binaires vous donnera le hit du CPU sans les avantages de la bande passante. Vous pouvez également activer la compression dans les paramètres Joomla, mais il est préférable de laisser le serveur gérer cela.
Précompresser les ressources statiques
Je ne parle pas de minfication (bien que cela aide aussi) mais vous pouvez configurer Nginx et Apache pour serveur des ressources déjà compressées, éliminant efficacement le CPU hit de la compression gzip. Points bonus: utilisez Zopfli pour des fichiers encore plus petits.
Utilisez FastCGI pour PHP
Plus précisément, vous devez utiliser
php-fpm
. Cela empêche le démarrage de PHP lorsque le navigateur demande un fichier non PHP.Utilisez les en-têtes de cache appropriés
L'utilisation de l'en-
Expires
tête peut réduire considérablement les ressources du serveur requises. Après tout, la demande la plus rapide est celle qui n'a jamais été faite.Apache
En général, je recommanderais d'utiliser Nginx pour les sites haute performance. Si vous avez absolument besoin d'utiliser Apache pour une raison quelconque, j'ai reçu un conseil bonus:
Désactiver AllowOverride
Réglage
AllowOverride
pourNone
empêcher un grand nombre de disque IO etJoomla
N'utilisez pas le mode FTP
Bien que cela n'affecte pas vos utilisateurs lisant le site, cela ralentira certaines opérations telles que l'installation d'extensions.
Désactiver les extensions inutilisées
Cela vaut en particulier pour les plugins, beaucoup d'entre eux sont exécutés à chaque demande. La désactivation des menus et des composants est principalement utile lors de la liste des extensions et des types de menu disponibles. Prenez également 5 minutes pour parcourir les extensions fournies avec le noyau Joomla et désactivez celles que vous n'utilisez pas.
Désactivez Préparer le contenu
Si vous utilisez beaucoup de modules personnalisés (
mod_custom
pas personnalisés comme dans l'auto-écriture), vérifiez si vous pouvez désactiver Préparer le contenu dans ceux-ci. Cela économise du traitement.Utiliser la mise en cache
Si vous êtes sérieux au sujet des performances, vous voudrez activer la mise en cache. Particulièrement utile pour lire des sites lourds avec de nombreux utilisateurs anonymes. Les utilisateurs connectés contourneront la plupart du cache, si vous en avez beaucoup, l'effet ne sera pas aussi important.
Utiliser un gestionnaire de session alternatif
En utilisant un gestionnaire de session alternatif, vous pouvez libérer votre base de données pour des choses plus importantes. Je ne recommanderais pas le fichier (appelé confusément Aucun dans les paramètres Joomla) car cela entraînerait une nouvelle augmentation de l'ES disque. L'utilisation d'APC est potentiellement le fastet mais augmente le risque de perdre toutes les données de session. Le juste milieu est Memcache. Bien que cela nécessite un processus supplémentaire, il est plus fiable que APC et beaucoup plus rapide que le stockage de toutes les données dans la base de données
Gardez votre site simple
Avez-vous vraiment besoin de ce bouton Facebook? Qu'en est-il de cette jolie icône que personne ne voit jamais parce qu'elle est en partie cachée derrière une bannière? Moins votre site affiche, plus il sera rapide. Dans la mesure du possible, utilisez également CSS3 au lieu d'images.
Divers
Définir un favicon
Grâce à une décision remontant aux navigateurs Internet Explorer 4.0, faites une demande vers un fichier appelé
favicon.ico
chaque fois qu'un utilisateur visite votre site. Si vous n'en avez pas, cela entraîne des E / S inutiles, car les réponses 404 ne sont pas mises en cache. Spécifiez l'icône de votre site avec une balise Meta HTML ou ajoutez un fichier appeléfavicon.ico
à la racine Web. Vous ne voulez pas de favicon? Placez un PNG transparent d'une taille de 1x1 pixel à cet endroit. Notez que l'extension doit toujours l'être.ico
.Optimisez vos images
Il est étonnant de voir à quel point on peut économiser en optimisant les images, en particulier les fichiers PNG. Il existe une variété d'outils disponibles pour tout système d'exploitation, personnellement j'utilise ImageOptim qui est disponible pour OS X. Les images de base de Joomla sont déjà optimisées mais parcourez vos propres images, en particulier les modèles sont importants. Vous pouvez également vérifier les extensions que vous utilisez. S'ils sont open source, pourquoi ne pas contribuer à une demande de pull contenant des images nouvellement optimisées?
Les avancés
Si vous voulez vraiment tout faire, pensez à mettre Varnish devant votre site. Il met en cache les demandes sur votre site et, si possible, les sert à partir de son propre cache, sans jamais toucher Joomla. C'est un outil complexe mais avec beaucoup de puissance. Joomla ne bénéficiera pas de fonctionnalités avancées comme Edge Side Include (ESI), mais votre propre code le pourrait.
la source
Une GRANDE chose que vous pouvez faire pour améliorer les temps de réponse de votre site est de mettre à jour les paramètres de votre module. Les modules personnalisés (utilisant mod_custom) ont une option pour activer / désactiver la préparation du contenu. Cela vous permet d'exécuter des plugins de contenu sur le contenu des données dans votre module personnalisé. Il est puissant lorsqu'il est utilisé correctement, mais il ajoute du temps de rendu supplémentaire à la sortie du module. À moins que vous n'utilisiez réellement un plugin de contenu dans le contenu de votre module personnalisé, il est préférable de le désactiver. Vous verrez une diminution du temps de rendu du module lorsque vous effectuez cette opération.
Capture d'écran du paramètre:
la source
Je suppose que vous avez exécuté votre site à la vitesse de la page Google, et vous cherchez en effet à réduire le temps de réponse de la page, c'est-à-dire le temps mis par votre balisage pour être envoyé au navigateur.
Les coupables les plus probables sont les requêtes lourdes. Activez le débogage et regardez au bas de la page pour savoir quelles sont les requêtes les plus lourdes et supprimez-les ou réduisez-les. Vous pouvez également utiliser les journaux de requêtes lentes de votre serveur MySQL.
La prochaine chose que vous pouvez regarder est la mise en cache. Selon le type de site que vous avez, vous pouvez désactiver la mise en cache conservatrice ou progressive. Progressive doit être utilisé sur des sites qui ne disposent pas de fonctionnalités liées à l'utilisateur.
la source
Les choses que je sais qui peuvent aider (dont la plupart ont été répertoriées) sont les suivantes:
J'ai utilisé une combinaison du cache Joomla intégré (ou même APC activé sur le serveur) et des plugins comme gzip ou le plugin rockbooster du thème de la fusée. J'utilise également un plugin CDN nonumbers avec un compte Amazon.
Cela aide certainement, mais vous devez surveiller votre site et désactiver le cache pour les composants qui ont des problèmes. J'ai dû contourner CiviCRM sur notre site car il ne fonctionnait pas bien avec la mise en cache. Joomla est livré avec un plugin cachecontrol qui peut gérer cela.
la source
Vous voudrez également examiner la réduction des actifs locaux et la mise en cache appropriée. Une chose que vous pouvez faire est d'utiliser des plugins CDN. Voici deux que je recommanderais:
'corePHP' jomCDN - https://www.corephp.com/joomla-products/jomcdn
NoNumbers CDN pour Joomla! - http://www.nonumber.nl/extensions/cdnforjoomla
De plus, si aucun des éléments ci-dessus ne semble résoudre les problèmes, vous pouvez avoir un problème plus profond - éventuellement dans votre modèle, le serveur lui-même ou d'autres choses. Si tel est le cas, il serait préférable d'engager quelqu'un pour traquer le problème et le résoudre pour vous.
la source
Vous pouvez également utiliser ce code dans votre fichier .htaccess:
la source
J'ai créé plus de centaines de sites Web en utilisant Joomla!
Dans la plupart des cas, les gens pensent que Joomla travaille énormément sur le serveur, mais selon les analyses effectuées par moi, la chose la plus importante pour garder votre site Web RAPIDE est d'OPTIMISER les IMAGES et JS / CSS.
N'utilisez pas les éditeurs Joomla, comme JCE, pour simplement changer la taille de l'image. Utilisez des éditeurs d'images comme Photoshop ou tout autre éditeur pour redimensionner vos images à la taille dont vous avez besoin!
Utilisez les outils de compression JS / CSS.
Nous utilisons toujours les outils Pingdom pour analyser la vitesse du site Web et nous utilisons la fonctionnalité intégrée de T3 Framework pour optimiser JS / CSS!
la source
Avez-vous supprimé les plugins inutilisés? Joomla doit charger et traiter chaque plug-in publié pour les événements déclenchés dans une demande.
Vous devez comprendre les extensions que vous avez installées et comment elles interagissent avec Joomla!
De nombreuses extensions installent des plugins qui gèrent le contenu, le système ou les activités des utilisateurs pour lancer des fonctions de code. Certains d'entre eux peuvent être superflus.
Je sais que k2 installe de nombreux plugins qui répondent aux événements liés à la langue qui ne produisent aucune sortie réelle pour les sites à langue unique. La non-publication de ces plugins peut réduire le temps de traitement.
la source
Améliorer les ressources du plan d'hébergement de serveur / Web
Peut-être pas la réponse que l'OP recherchait mais mérite d'être mentionnée au cas où cela ne serait pas évident pour tout le monde (et aucune autre réponse ne l'a encore mentionné): améliorer les ressources du serveur telles que la mémoire, le processeur et la vitesse du disque.
Si vous utilisez un hébergement Web partagé, la mise à niveau du plan "économie" vers le plan "entreprise" ou un autre plan plus avancé peut améliorer les ressources du serveur disponibles sur votre site Web et réduire le temps de réponse du serveur. Le passage à une société d'hébergement de meilleure qualité (par exemple avec des serveurs d'hébergement Web partagés moins encombrés) pourrait également aider.
Un meilleur plan d'hébergement peut également vous donner accès à des améliorations de performances qui ne sont pas incluses dans le plan d'hébergement de base. Par exemple, les plans d'hébergement SiteGround «GrowBig» et «GoGeek» incluent un cache dynamique qui permet de réduire considérablement le temps de réponse du serveur. L'option de cache dynamique n'est pas disponible dans le plan "Démarrage".
la source