Memcached est un magasin de données clé-valeur en mémoire hautes performances gratuit et open source. Il est généralement utilisé pour accélérer les applications en mettant en cache divers objets à partir des résultats des appels d'API et de base de données.
Cet article montre comment installer et configurer Memcached sur Ubuntu 20.04.
Installation de Memcached #
Le package memcached est inclus dans les référentiels Ubuntu 20.04 par défaut. Pour l'installer, entrez la commande suivante en tant que root ou utilisateur avec les privilèges sudo :
Lessudo apt update
sudo apt install memcached libmemcached-tools
libmemcached-tools
Le package fournit des utilitaires de ligne de commande que vous pouvez utiliser pour gérer le serveur memcached. Une fois l'installation terminée, le service memcached démarrera automatiquement. Pour vérifier l'état du service, saisissez :
sudo systemctl status memcached
La sortie ressemblera à ceci :
● memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-07-13 19:32:01 UTC; 23s ago
Ça y est, vous avez installé memcached sur votre serveur Ubuntu 20.04, et vous pouvez commencer à l'utiliser.
Configuration de Memcached #
Les options Memcached peuvent être configurées dans /etc/memcached.conf
dossier. Par défaut, memcached est configuré pour n'écouter que sur localhost.
Les paramètres de configuration par défaut sont suffisants pour la plupart des utilisateurs.
Numéro d'accès à distance
Si le client qui se connecte à memcached s'exécute sur le même hôte, vous ne devez pas autoriser l'accès à distance.
Lorsqu'il est mal configuré, memcached peut être utilisé pour effectuer une attaque par déni de service distribué (DDoS). Pour autoriser l'accès à distance au serveur memcached, vous devez configurer le pare-feu et ouvrir le port UDP 11211 memcached uniquement à partir de clients de confiance.
L'exemple suivant suppose que vous souhaitez vous connecter au serveur memcached via un réseau privé. L'IP du serveur memcached est 192.168.100.20
, et l'adresse IP du client est 192.168.100.30
.
La première étape consiste à modifier la configuration memcached et à configurer le service pour qu'il écoute sur l'interface de réseau privé du serveur :
Pour cela, ouvrez le memcached.conf
fichier de configuration :
sudo nano /etc/memcached.conf
Localisez la ligne qui commence par -l 127.0.0.1
et remplacez 127.0.0.1
avec l'adresse IP du serveur 192.168.100.20
.
-l 192.168.100.20
Redémarrez le service Memcached pour que les modifications prennent effet :
sudo systemctl restart memcached
Une fois le service configuré, l'étape suivante consiste à ouvrir le port memcached dans le pare-feu.
sudo ufw allow from 192.168.100.30 to any port 11211
Connexion à Memcached #
Il existe de nombreuses implémentations de clients memcached écrites pour différents langages de programmation.
PHP #
Pour utiliser Memcached comme base de données de mise en cache pour votre application PHP telle que WordPress, Drupal, Joomla ou Magento, vous devez installer le php-memcached
extension :
sudo apt install php-memcached
Python #
Il existe plusieurs bibliothèques Python pour interagir avec Memcache. Vous pouvez installer votre bibliothèque préférée en utilisant pip :
pip install pymemcache
pip install python-memcached