Memcached es un almacén de datos clave-valor en memoria de alto rendimiento, gratuito y de código abierto. Por lo general, se usa para acelerar las aplicaciones mediante el almacenamiento en caché de varios objetos de los resultados de las llamadas a la API y la base de datos.
Este artículo muestra cómo instalar y configurar Memcached en Debian 10.
Requisitos previos #
Deberá iniciar sesión como usuario con acceso sudo para poder instalar paquetes en su sistema Debian.
Instalación de Memcached en Debian 10 #
El paquete memcached está incluido en los repositorios predeterminados de Ubuntu 20.04. Para instalarlo, ingrese el siguiente comando como root o usuario con privilegios sudo:
sudo apt update
sudo apt install memcached libmemcached-tools
Las libmemcached-tools
El paquete proporciona varias herramientas de línea de comandos para interactuar con el servidor Memcached.
Una vez completada la instalación, el servicio de Memcached se iniciará automáticamente. Puedes verificarlo consultando el estado del servicio:
sudo systemctl status memcached
La salida se verá así:
● memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2020-08-14 14:22:01 CDT; 3min 40s ago
Docs: man:memcached(1)
...
Eso es todo. Ha instalado correctamente Memcached en su servidor Debian 10.
Configuración de Memcached #
Las opciones de Memcached se pueden configurar en /etc/memcached.conf
expediente. Los ajustes de configuración predeterminados son suficientes para la mayoría de los usuarios.
Acceso Remoto #
El servicio de Memcached solo escucha en localhost. Si el cliente que se conecta al servidor también se ejecuta en el mismo host, no necesita cambiar el archivo de configuración predeterminado.
Cuando no se configura correctamente, Memcached se puede utilizar para realizar un ataque de denegación de servicio distribuido (DDoS). Para permitir conexiones remotas al servidor Memcached, debe configurar su firewall y permitir el acceso al puerto UDP 11211 de Memcached solo desde clientes de confianza.
El siguiente ejemplo asume que se está conectando al servidor de Memcached a través de una red privada. La IP del servidor es 192.168.100.20
y la dirección IP del cliente es 192.168.100.30
El primer paso es editar la configuración de Memcached y configurar el servicio para escuchar en la interfaz de red privada del servidor:
Para hacerlo, abra el memcached.conf
archivo de configuración:
sudo nano /etc/memcached.conf
Busque la línea que comienza con -l 127.0.0.1
y reemplaza 127.0.0.1
con la dirección IP del servidor 192.168.100.20
.
-l 192.168.100.20
Reinicie el servicio Memcached para que los cambios surtan efecto:
sudo systemctl restart memcached
Una vez configurado el servicio, el siguiente paso es abrir el puerto Memcached en el firewall.
sudo ufw allow from 192.168.100.30 to any port 11211
Ahora puede conectarse al servidor Memcached desde la ubicación remota.
Conectando a Memcached #
Hay muchas implementaciones de clientes Memcached escritas para diferentes lenguajes de programación.
PHP#
Para usar Memcached como una base de datos de almacenamiento en caché para su aplicación PHP, como WordPress, Drupal o Magento, debe instalar php-memcached
extensión:
sudo apt install php-memcached
Pitón #
Hay varias bibliotecas de Python para interactuar con Memcache. Puede instalar su biblioteca preferida usando pip:
pip install pymemcache
pip install python-memcached