Recherche de site Web

Comment installer et configurer Memcached sur CentOS 8


Memcached est un système de mise en cache d'objets à mémoire distribuée qui peut améliorer considérablement les performances de votre site Web ou de votre application en stockant en mémoire les données fréquemment consultées, réduisant ainsi le nombre de requêtes de base de données requises. Dans cet article, nous vous guiderons tout au long du processus d'installation et de configuration de Memcached sur CentOS 8.

Étape 1 : Installer Memcached sur CentOS 8

La première étape consiste à installer Memcached sur votre système CentOS 8. Vous pouvez le faire en exécutant la commande suivante -

sudo dnf install memcached

Cette commande téléchargera et installera Memcached sur votre système.

Étape 2 : démarrez Memcached et activez-le au moment du démarrage

Une fois l'installation terminée, vous devez démarrer le service Memcached et lui permettre de démarrer automatiquement au démarrage. Vous pouvez le faire en exécutant la commande suivante -

sudo systemctl start memcached
sudo systemctl enable memcached

La première commande démarre le service Memcached et la deuxième commande lui permet de démarrer automatiquement au démarrage.

Étape 3 : configurer Memcached

Par défaut, Memcached écoute sur le port 11211 et utilise le protocole UDP. Cependant, vous pouvez configurer Memcached pour écouter sur un autre port et utiliser le protocole TCP. Pour ce faire, vous devez modifier le fichier de configuration Memcached.

sudo nano /etc/sysconfig/memcached

Cela ouvrira le fichier de configuration Memcached dans l'éditeur de texte Nano. Vous pouvez modifier le fichier de configuration comme suit -

PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1"

PORT - Ceci spécifie le port sur lequel Memcached écoute. Vous pouvez le remplacer par n'importe quel port de votre choix.

USER - Ceci spécifie l'utilisateur sous lequel Memcached s'exécute.

MAXCONN - Ceci spécifie le nombre maximum de connexions simultanées que Memcached peut gérer.

CACHESIZE - Ceci spécifie la quantité de mémoire que Memcached peut utiliser pour la mise en cache des données.

OPTIONS - Ceci spécifie des options supplémentaires pour Memcached. Dans cet exemple, nous l'avons configuré pour qu'il écoute uniquement sur l'hôte local.

Enregistrez les modifications et quittez l'éditeur de texte Nano.

Étape 4 : tester Memcached

Après avoir installé et configuré Memcached, vous pouvez le tester pour vous assurer qu'il fonctionne correctement. Vous pouvez le faire en utilisant la commande telnet pour vous connecter à Memcached et définir et récupérer une valeur.

telnet 127.0.0.1 11211
set mykey 0 60 5
hello
get mykey

Cela se connectera à Memcached sur le port 11211 et définira la valeur de la clé mykey sur hello avec un TTL de 60 secondes. Ensuite, il récupère la valeur de la clé mykey.

Si tout fonctionne correctement, vous devriez voir le résultat suivant -

STORED
VALUE mykey 0 5
hello
END

Cela signifie que Memcached a pu stocker et récupérer la valeur de la clé mykey.

Étape 5 : Installez l'extension Memcached pour PHP

Si vous utilisez PHP pour votre site Web ou votre application, vous pouvez installer l'extension Memcached pour PHP afin d'interagir facilement avec Memcached à partir de votre code PHP.

Vous pouvez le faire en exécutant la commande suivante -

sudo dnf install php-memcached

Cela téléchargera et installera l'extension Memcached pour PHP.

Étape 6 : configurer l'extension Memcached pour PHP

Après avoir installé l'extension Memcached pour PHP, vous devez la configurer pour vous connecter à Memcached.

Vous pouvez le faire en modifiant le fichier memcached.ini situé dans le répertoire de configuration PHP. Vous pouvez trouver le répertoire en exécutant la commande suivante -

php --ini

Cela affichera l'emplacement du répertoire de configuration PHP. Accédez au répertoire et modifiez le fichier memcached.ini -

sudo nano /etc/php.d/40-memcached.ini

Dans le fichier memcached.ini, vous devez ajouter la ligne suivante -

extension=memcached.so

Cette ligne active l'extension Memcached pour PHP.

Enregistrez les modifications et quittez l'éditeur de texte Nano.

Étape 7 : testez l'extension Memcached pour PHP

Après avoir installé et configuré l'extension Memcached pour PHP, vous pouvez la tester pour vous assurer qu'elle fonctionne correctement.

Vous pouvez le faire en créant un fichier PHP avec le code suivant -

<?php

   $memcached = new Memcached();
   $memcached->addServer('localhost', 11211);

   $memcached->set('mykey', 'hello', 60);

   echo $memcached->get('mykey');

?>

Ce code crée une nouvelle instance de la classe Memcached, se connecte à Memcached sur localhost sur le port 11211, définit la valeur de la clé mykey sur hello avec un TTL de 60 secondes et récupère la valeur de la clé mykey.

Si tout fonctionne correctement, vous devriez voir le résultat suivant lorsque vous exécutez le fichier PHP -

hello

Cela signifie que l'extension Memcached pour PHP a pu stocker et récupérer la valeur de la clé mykey.

Utiliser Memcached avec un équilibreur de charge

Si vous disposez de plusieurs serveurs Web qui desservent votre site Web ou votre application, vous pouvez utiliser un équilibreur de charge pour répartir les demandes entrantes sur les serveurs. En utilisant Memcached avec un équilibreur de charge, vous pouvez vous assurer que tous les serveurs ont accès aux mêmes données mises en cache.

Pour ce faire, vous devez configurer Memcached pour utiliser un algorithme de hachage cohérent. Cela garantira que la même clé est toujours stockée et récupérée du même serveur Memcached. Vous pouvez le faire en modifiant la ligne OPTIONS dans le fichier de configuration Memcached -

OPTIONS="-l 127.0.0.1 -o hash_algorithm=jenkins -o hash_mem_multiplier=1.1"

Dans cet exemple, nous utilisons l'algorithme de hachage jenkins et définissons l'option hash_mem_multiplier sur 1.1, ce qui augmente la quantité de mémoire disponible pour la mise en cache des données.

Surveiller Memcached

Pour garantir que Memcached fonctionne correctement et efficacement, vous devez le surveiller régulièrement. Vous pouvez utiliser des outils tels que memcached-tool ou telnet pour vérifier l'état de Memcached et afficher des statistiques telles que le nombre d'éléments dans le cache et le taux de réussite du cache.

Par exemple, pour vérifier l'état de Memcached, vous pouvez exécuter la commande suivante -

sudo memcached-tool 127.0.0.1:11211 stats

Cela affichera des statistiques telles que le nombre de connexions, le taux de réussite du cache et l'utilisation de la mémoire de Memcached.

Utilisez Memcached avec un réseau de diffusion de contenu (CDN)

Si vous disposez d'un site Web ou d'une application destiné à un public mondial, vous pouvez utiliser un réseau de diffusion de contenu (CDN) pour améliorer les performances et la fiabilité de votre site. Un CDN met en cache votre contenu sur des serveurs situés dans le monde entier, réduisant ainsi la latence et la charge sur vos serveurs Web.

Vous pouvez utiliser Memcached avec un CDN en configurant votre CDN pour mettre en cache les données dans Memcached. Cela permettra à votre CDN de récupérer rapidement les données mises en cache de Memcached, réduisant ainsi la charge sur vos serveurs Web.

Utiliser Memcached pour la mise en cache de la base de données

En plus de mettre en cache les données de votre application Web, vous pouvez également utiliser Memcached pour mettre en cache les requêtes de base de données. En mettant en cache les requêtes fréquemment utilisées dans Memcached, vous pouvez réduire la charge sur votre serveur de base de données et améliorer les performances de votre application.

Pour ce faire, vous devez modifier le code de votre application pour vérifier si les données sont déjà mises en cache dans Memcached avant de faire une requête sur la base de données. Si les données sont déjà mises en cache, votre application peut les récupérer depuis Memcached au lieu de faire une nouvelle requête.

Utilisez Memcached avec une stratégie TTL

Lorsque vous utilisez Memcached, il est important d'avoir une stratégie pour définir la durée de vie (TTL) des données mises en cache. Le TTL spécifie combien de temps les données doivent rester dans le cache avant d'être expulsées.

Si vous définissez la durée de vie trop basse, les données peuvent être supprimées du cache avant de pouvoir être réutilisées, ce qui peut ralentir votre application. Si vous définissez une durée de vie trop élevée, les données peuvent devenir obsolètes, ce qui peut également entraîner des problèmes.

Une bonne stratégie pour définir la durée de vie consiste à la baser sur la fréquence à laquelle les données sont accédées. Pour les données fréquemment consultées, vous pouvez définir une durée de vie plus courte pour garantir que les données sont toujours à jour. Pour les données moins fréquemment consultées, vous pouvez définir une durée de vie plus longue pour réduire la charge sur le cache.

Conclusion

Dans cet article, nous vous avons guidé tout au long du processus d'installation et de configuration de Memcached sur CentOS 8. Nous vous avons également montré comment installer l'extension Memcached pour PHP et comment la configurer pour se connecter à Memcached. En utilisant Memcached, vous pouvez améliorer considérablement les performances de votre site Web ou de votre application en réduisant le nombre de requêtes de base de données requises.

Articles connexes: