DocumentaciónCommerceGuía de configuración

Solo PaaS

Configuración de memcached en Ubuntu

Última actualización: 18 de julio de 2024
  • Temas:
  • Configuración
  • Caché

Creado para:

  • Experimentado
  • Administrador
  • Desarrollador

Esta sección proporciona instrucciones para instalar memcached en Ubuntu.

INFO
Adobe recomienda utilizar memcached versión 3.0.5 o posterior.

Debido a que PHP no tiene soporte nativo para memcache, debe instalar una extensión para que PHP la use. Hay dos extensiones PHP disponibles y es importante descodificar cuál utilizar:

  • memcache (no d): una extensión antigua pero popular que no se mantiene con regularidad.
    La extensión memcache actualmente no funciona con PHP 7. Consulte la documentación de PHP para memcache.

    El nombre exacto es php5-memcache para Ubuntu.

  • memcached (cond), una extensión más reciente y mantenida que es compatible con PHP 7. Consulte la documentación de PHP para memcached.

    El nombre exacto es php5-memcached para Ubuntu.

Instale y configure memcached en Ubuntu

Para instalar y configurar memcached en Ubuntu:

  1. Como usuario con privilegios de root, escriba el siguiente comando:

    apt-get -y update
    
    apt-get -y install php5-memcached memcached
    
  2. Cambie el parámetro de configuración memcached para CACHESIZE y -l:

    1. Abra /etc/memcached.conf en un editor de texto.

    2. Busque el parámetro -m.

    3. Cambie su valor por lo menos 1GB

    4. Busque el parámetro -l.

    5. Cambiar su valor a 127.0.0.1 o localhost

    6. Guarde los cambios en memcached.conf y salga del editor de texto.

    7. Reinicie memcached.

      service memcached restart
      
  3. Reinicie el servidor web.

    Para Apache, service apache2 restart

  4. Continúe con la siguiente sección.

Verificar que memcached funcione antes de instalar Magento

Adobe recomienda probar memcached para asegurarse de que funciona antes de instalar Commerce. Hacerlo solo lleva unos minutos y puede simplificar la resolución de problemas más adelante.

Verificar que el servidor web reconozca memcached

Para comprobar que el servidor web reconoce memcached:

  1. Crear un archivo de phpinfo.php en el docroot del servidor web:

    <?php
    // Show all information, defaults to INFO_ALL
    phpinfo();
    
  2. Vaya a esa página en el explorador web. Por ejemplo:

    http://192.0.2.1/phpinfo.php
    
  3. Asegúrese de que memcached se muestre de la siguiente manera:

    Confirmar que el servidor web reconoce memcached

    Compruebe que está utilizando memcached versión 3.0.5 o posterior.

    Si no se muestra memcached, reinicie el servidor web y actualice la página del explorador. Si sigue sin mostrarse, compruebe que ha instalado la extensión php-pecl-memcached.

Verificar que memcached pueda almacenar datos en caché

Esta prueba utiliza un script PHP para verificar que memcached puede almacenar y recuperar datos de caché.

Para obtener más información sobre esta prueba, consulte el tutorial Cómo instalar y utilizar Memcache en Ubuntu.

Cree cache-test.php en el docroot del servidor web con el siguiente contenido:

$meminstance = new Memcached();

$meminstance->addServer("<memcached hostname or ip>", <memcached port>);

$result = $meminstance->get("test");

if ($result) {
    echo $result;
} else {
    echo "No matching key found. Refresh the browser to add it!";
    $meminstance->set("test", "Successfully retrieved the data!") or die("Could not save anything to memcached...");
}

Donde <memcached hostname or ip> es localhost, 127.0.0.1 o el nombre de host o la dirección IP de memcache. <memcached port> es el puerto de escucha; de forma predeterminada, 11211.

Vaya a esa página en un explorador web. Por ejemplo

http://192.0.2.1/cache-test.php

La primera vez que vaya a la página, se mostrará lo siguiente: No matching key found. Refresh the browser to add it!

Actualice el explorador. El mensaje cambia a Successfully retrieved the data!

Finalmente, puede ver las claves memcache usando Telnet:

telnet localhost <memcache port>

En el mensaje, escriba

stats items

El resultado es similar al siguiente:

STAT items:2:number 1
STAT items:2:age 106
STAT items:2:evicted 0
STAT items:2:evicted_nonzero 0
STAT items:2:evicted_time 0
STAT items:2:outofmemory 0
STAT items:2:tailrepairs 0
STAT items:2:reclaimed 0
STAT items:2:expired_unfetched 0
STAT items:2:evicted_unfetched 0

Vaciar el almacenamiento en memoria caché y salir de Telnet:

flush_all
quit

Información adicional acerca de la prueba Telnet

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c