Memcaché est un service de mise en cache de clé-valeur en mémoire open source hautes performances qui s'avère pratique de diverses manières. Premièrement, il aide à accélérer les applications en mettant en cache les données de session, les jetons d'authentification des utilisateurs et les appels d'API. En outre, il fournit un mécanisme qui facilite le partage de données entre plusieurs instances d'application.
Alors, quels sont les avantages d'utiliser Memcached ? Nous pouvons résumer les avantages en deux :améliorer les performances des applications et réduire le coût d'exécution de vos applications puisque c'est gratuit.
Voyons maintenant comment vous pouvez installer et configurer Memcached sur CentOS 8.
Ce dont vous avez besoin
Au début, assurez-vous que les conditions suivantes sont remplies :
- Accès au serveur CentOS 8
- Un utilisateur standard avec des privilèges sudo ou élevés
Sans plus tarder, retroussons nos manches et mettons-nous au travail.
Étape 1) Installer le serveur de mise en cache Memcached
Pour installer le serveur de mise en cache Memcached, commencez par mettre à jour la liste des packages système à l'aide de la commande :
$ sudo dnf update -y
Étant donné que le package Memcached et ses dépendances sont présents sur les référentiels AppStream, nous allons installer Memcached à l'aide du gestionnaire de packages par défaut, comme indiqué :
$ sudo dnf install -y memcached libmemcached
Enfin, vous obtiendrez la sortie ci-dessous pour indiquer que l'installation a réussi.
Pour être sûr que Memcached est installé sur CentOS 8, exécutez :
$ rpm -q memcached memcached-1.5.9-2.el8.x86_64 $
Pour des informations plus détaillées sur Memcached, utilisez les arguments -qi comme indiqué. Cela affiche des informations plus détaillées telles que la version Memcached, l'architecture, la date d'installation, la date de construction et bien plus encore.
$ rpm -qi memcached
Étape 2) Configurer Memcached
Le fichier de configuration par défaut de Memcached est /etc/sysconfig/memcached. Par défaut, il écoute sur le port 11211 et sur l'hôte local, système désigné par 127.0.0.1, comme observé à la ligne 5.
[[email protected] ~]$ cat -n /etc/sysconfig/memcached 1 PORT="11211" 2 USER="memcached" 3 MAXCONN="1024" 4 CACHESIZE="64" 5 OPTIONS="-l 127.0.0.1,::1" [[email protected] ~]$
Si l'application que vous avez l'intention de connecter à Memcached se trouve sur le même serveur que Memcached, veuillez laisser la configuration par défaut telle quelle.
Si vous avez une application en cours d'exécution sur un système distant, sur le même réseau local et que vous souhaitez qu'elle se connecte au serveur Memcached, ajustez la ligne 5 en remplaçant l'adresse localhost 127.0.0.1 par l'adresse IP du système distant.
Par exemple, le système distant sur lequel notre application est hébergée a une IP 192.168.2.100. Par conséquent, ajustez le fichier de configuration comme indiqué.
[[email protected] ~]$ sudo vi /etc/sysconfig/memcached 1 PORT="11211" 2 USER="memcached" 3 MAXCONN="1024" 4 CACHESIZE="64" 5 OPTIONS="-l 192.168.2.100,::1"
Enregistrez et quittez le fichier de configuration.
Étape 3 :Configurez le pare-feu pour autoriser le trafic vers le serveur Memcached
De plus, nous devons autoriser le trafic vers le serveur Memcached en ouvrant le port par défaut (port 11211) sur le pare-feu.
Par conséquent, exécutez les commandes ci-dessous :
$ sudo firewall-cmd --add-port=11211/tcp --zone=public --permanent $ sudo firewall-cmd --reload
Étape 3) Démarrer et activer le service memcached
Une fois toutes les configurations effectuées avec, démarrez et activez Memcached comme indiqué :
$ sudo systemctl start memcached $ sudo systemctl enable memcached
Pour confirmer que Memcached est opérationnel, exécutez la commande :
$ sudo systemctl status memcached
Intégration de Memcached avec PHP
Comme nous l'avons indiqué précédemment, Memcached peut être utilisé pour accélérer les applications. Pour cela, vous devez installer un client spécifique à la langue sur le serveur. Par exemple, si vous exécutez une application PHP telle que WordPress, OwnCloud ou Magento, installez l'extension php-pecl-memcache comme indiqué.
Au-dessus de ladite extension ou package n'est pas disponible dans les référentiels CentOS 8 par défaut, nous devons donc d'abord activer les référentiels epel et remi, exécutez les commandes suivantes l'une après l'autre,
$ sudo dnf install epel-release -y $ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y $ sudo dnf module enable php:remi-7.4 -y $ sudo dnf install -y php-pecl-memcache php-pecl-memcached
Lire aussi :Comment installer PHP 7.4 sur CentOS 8 / RHEL 8
Maintenant, pour le tester, installons un serveur Web et d'autres dépendances PHP
$ sudo dnf install -y nginx php php-cli
Démarrez maintenant le service du serveur Web (nginx) et créez une page PHP de test pour vérifier si Memcached est activé pour PHP ou non
$ sudo systemctl enable nginx.service –now $ sudo systemctl restart memcached.service $ sudo vi /usr/share/nginx/html/info.php
Collez maintenant le contenu suivant dans le fichier et enregistrez les modifications.
<?php phpinfo(); ?>
Ensuite, rendez-vous sur votre navigateur et parcourez l'adresse ci-dessous
http://server-ip/info.php
Faites défiler vers le bas et recherchez la section Memcached qui affiche toutes les informations sur Memcached.
Ceci est une confirmation que Memcached est installé et fonctionne bien avec PHP et votre serveur Web Nginx.
Intégrer Memcached pour les applications basées sur Python
Pour les applications Python, assurez-vous d'installer les bibliothèques pymemcache et python-memcached comme indiqué à l'aide de pip.
$ pip3 install pymemcache --user $ pip3 install python-memcached --user
Pour conclure, Memcached est un moyen simple et économique d'accélérer vos applications en mettant en cache le contenu fréquemment utilisé. C'est gratuit et open source et vous pouvez l'adapter à vos préférences. Vous pouvez visiter le Wiki Memcached. Pour plus d'informations sur Memcached.