GNU/Linux >> Tutoriels Linux >  >> Debian

Comment accélérer apache avec mod_pagespeed et Memcached sur Ubuntu 15.04

Ce didacticiel vous montrera comment améliorer les temps de chargement des pages de votre site Web en utilisant le module Google mod_pagespeed pour Apache en conjonction avec le cache en mémoire rapide Memcached. Le temps de chargement de la page est un facteur important pour obtenir un bon classement dans les moteurs de recherche, vous pouvez tester le temps de chargement actuel, par ex. avec l'outil Google PageSpeed Insights ou avec les outils de développement du navigateur Web Firefox. Pagespeed est un module Apache 2 qui optimise et met en cache le contenu d'un site Web avant qu'il ne soit livré au navigateur, le résultat est que la page se charge, la charge du système sur votre serveur diminue et le serveur sera en mesure de fournir plus de pages par seconde . Mod_pagespeed utilise un cache de système de fichiers par défaut. Dans ce didacticiel, nous remplacerons le cache du système de fichiers par Memcached, un démon de mise en cache rapide en mémoire qui améliorera encore le temps de chargement. Ce tutoriel est compatible avec tous les types de configurations apache, j'utiliserai un serveur Ubuntu LAMP comme base mais vous pouvez également utiliser l'un des didacticiels ISPConfig 3 Perfect Server.

Installation de mod_pagespeed

Google fournit des packages mod_pagespeed .deb pour les installations Ubuntu 32 et 64 bits.

Comment savoir si vous avez besoin du package 32 bits ou 64 bits ? Exécutez la commande :

uname -a

Le résultat de la commande devrait ressembler à la capture d'écran ci-dessous.

Lorsque la commande contient la chaîne "x86_64", votre système exécute un noyau Linux 64 bits. Dans ce cas, utilisez les commandes fournies ci-dessous pour Ubuntu 64 bits.

Ubuntu 64 bits (Par défaut pour la plupart des serveurs actuels)

cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb 
dpkg -i mod-pagespeed-stable_current_amd64.deb

Ubuntu 32 bits

cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb 
dpkg -i mod-pagespeed-stable_current_i386.deb

Redémarrez ensuite Apache 2 pour charger la configuration mod_pagespeed.

service apache2 restart

Installation de Memcached

Le démon Memcached est disponible dans les dépôts Ubuntu en tant que package .deb et peut être installé avec apt :

apt-get -y install memcached

Exécutez la commande "netstat -tap | grep memcached" pour voir si Memcached est démarré :

netstat -tap | grep memcached

Le résultat de la commande netstat doit ressembler à ceci :

[email protected]:/tmp# netstat -tap | grep memcached
tcp 0 0 localhost:11211 *:* LISTEN 1687/memcached

J'ai marqué le port sur lequel Memcached s'exécute en gras. Nous avons besoin de connaître ce numéro de port pour la configuration mod_pagespeed.

Si vous aimez utiliser Memcache à partir de vos applications basées sur PHP et pas seulement pour mod_pagespeed, installez l'extension PHP memcahed :

apt-get install php5-memcached

Configurer mod_pagespeed pour utiliser Memcached

Ouvrez le fichier pagespeed.conf dans un éditeur, j'utiliserai ici l'éditeur nano :

nano /etc/apache2/mods-available/pagespeed.conf

et recherchez la ligne "ModPagespeedMemcachedServers":

[....]
# ModPagespeedMemcachedServers localhost:11211
[....]

Supprimez le # devant la ligne pour que la ligne résultante ressemble à celle ci-dessous :

[....]
ModPagespeedMemcachedServers localhost:11211
[....]

Si vous disposez de suffisamment de mémoire sur votre serveur, vous pouvez obtenir une accélération supplémentaire en supprimant le # devant cette ligne :

[....]
ModPagespeedCreateSharedMemoryMetadataCache "/var/cache/mod_pagespeed/" 51200
[....]

Redémarrez ensuite le serveur Apache 2 pour activer la nouvelle configuration.

service apache2 restart

Désormais, mod_pagespeed utilisera Memcached comme backend de stockage. Vous pouvez obtenir des statistiques d'utilisation de Memcached avec la commande nc :

echo stats | nc 127.0.0.1 11211
[email protected]:/tmp# echo stats | nc 127.0.0.1 11211
STAT pid 1687
STAT uptime 134
STAT time 1440931897
STAT version 1.4.14 (Ubuntu)
STAT libevent 2.0.21-stable
STAT pointer_size 64
STAT rusage_user 0.000000
STAT rusage_system 0.008000
STAT curr_connections 5
STAT total_connections 6
STAT connection_structures 6
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 0
STAT get_misses 0
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 6
STAT bytes_written 0
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT bytes 0
STAT curr_items 0
STAT total_items 0
STAT evictions 0
STAT reclaimed 0
END

Appuyez sur [ctrl] + c pour revenir à l'invite de commande.

Testez à nouveau la vitesse de votre site Web, par ex. avec PageSpeed ​​Insights. Lorsque votre site Web n'a pas encore beaucoup de trafic, il se peut que vous deviez recharger la page Web plusieurs fois pour remplir les caches avant d'obtenir des résultats appropriés.

  • Outils de vitesse de page Google
  • memcached.org

Debian
  1. Installer mod_pagespeed avec Apache sur Ubuntu/CentOS

  2. Accélérez Apache avec mod_pagespeed et Memcached sur Debian 8

  3. Accélérez le serveur Web apache avec mod_pagespeed et memcached sur Debian 7 (Wheezy)

  4. Comment installer Memcached sur Ubuntu 16.04 / 14.04 / LinuxMint 18 / 17

  5. Comment installer Apache Maven sur Ubuntu 18.04 et 16.04

Comment accélérer apache avec mod_pagespeed et Memcached sur Ubuntu 15.10

Comment installer PrestaShop sur Ubuntu 20.04 avec Apache

Comment installer Drupal avec Apache sur Debian et Ubuntu

Comment installer et sécuriser Memcached sur Ubuntu 18.04

Comment installer et configurer Memcached avec Apache et PHP

Comment installer Django 3.2 sur Ubuntu 20.04 avec Apache et WSGI