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 como un sistema de almacenamiento en caché para acelerar las aplicaciones al almacenar en caché varios objetos de los resultados de las llamadas a la base de datos.

Este artículo muestra cómo instalar y configurar Memcached en CentOS 8.

Instalación de Memcached en CentOS

Los paquetes de Memcached se incluyen en los repositorios predeterminados de CentOS 8. La instalación es bastante fácil, ingrese el siguiente comando como root o usuario con privilegios sudo :

sudo dnf install memcached libmemcached

El libmemcachedpaquete proporciona varias herramientas de línea de comandos para administrar el servidor Memcached.

Una vez completada la instalación, habilite e inicie el servicio Memcached escribiendo:

sudo systemctl enable memcached --now

Para verificar que Memcached se está ejecutando, escriba:

sudo systemctl status memcached

La salida debería ser algo como esto:

● memcached.service - memcached daemon
   Loaded: loaded (/usr/lib/systemd/system/memcached.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-04-13 20:12:52 UTC; 2s ago
   ...

Eso es todo, ha instalado Memcached en su servidor CentOS 8 y puede comenzar a usarlo.

Configuración de Memcached

Las opciones de Memcached se pueden configurar en el /etc/sysconfig/memcachedarchivo. De forma predeterminada, Memcached está configurado para escuchar solo en localhost.

Si el cliente que se conecta al servidor también se ejecuta en el mismo host, no debe realizar ningún cambio.

Acceso remoto

Si la aplicación que se conectará a Memcached está alojada en un servidor remoto, debe configurar su firewall y permitir el acceso al puerto de Memcached 11211solo desde la dirección IP del cliente.

Cuando se configura incorrectamente, Memcached puede usarse para realizar un ataque de denegación de servicio distribuido (DDoS).

El siguiente ejemplo asume que desea conectarse al servidor Memcached a través de una red privada. La IP del servidor de Memcached 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:

Abra el memcachedarchivo de configuración:

sudo nano /etc/sysconfig/memcached

En el OPTIONSparámetro, agregue la dirección IP del servidor -l 192.168.100.20Esto le indica a Memcached que se vincule solo a la interfaz especificada.

/etc/sysconfig/memcached
OPTIONS="-l 192.168.100.20"

Guarde el archivo y reinicie el servicio Memcached para que los cambios surtan efecto:

sudo systemctl restart memcached

Una vez que el servicio está configurado, el siguiente paso es abrir el puerto Memcached en su firewall.

CentOS viene con una herramienta de configuración de firewall FirewallD . Los siguientes comandos crearán una nueva zona denominada memcached, abrirán el puerto 11211y permitirán el acceso solo desde la dirección IP del cliente.

sudo firewall-cmd --new-zone=memcached --permanentsudo firewall-cmd --zone=memcached --add-port=11211/udp --permanentsudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanentsudo firewall-cmd --zone=memcached --add-source=192.168.100.30/32 --permanentsudo firewall-cmd --reload

Conexión a Memcached

Para conectarse al servidor Memcached, debe usar un cliente específico del idioma.

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 la php-pecl-memcachedextensión:

sudo dnf install php-pecl-memcache

Pitón

Hay varias bibliotecas de Python para interactuar con memcached. Puede instalar su biblioteca preferida usando pip :

pip install pymemcache
pip install python-memcached

Conclusión#

Le mostramos cómo instalar Memcached en CentOS 8. Para obtener más información sobre este tema, consulte Memcached Wiki .

Si tiene alguna pregunta o comentario, no dude en comentar a continuación.