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 libmemcached El paquete 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 verse así:
● 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 /etc/sysconfig/memcached expediente. 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 11211 solo 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 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:
Abre el memcached archivo de configuración:
sudo nano /etc/sysconfig/memcached
En las OPTIONS parámetro, agregue la dirección IP del servidor -l 192.168.100.20 . Esto le indica a Memcached que se vincule solo a la interfaz especificada.
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 configurado el servicio, el siguiente paso es abrir el puerto Memcached en su firewall.
CentOS viene con una herramienta de configuración de cortafuegos FirewallD . Los siguientes comandos crearán una nueva zona llamada memcached , abre el puerto 11211 y permitir 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
Conectando a Memcached #
Para conectarse al servidor de 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 php-pecl-memcached extensió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