Configuración de memcached en Ubuntu
- Temas:
- Configuración
- Caché
Creado para:
- Experimentado
- Administrador
- Desarrollador
Esta sección proporciona instrucciones para instalar memcached en Ubuntu.
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ónmemcache
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:
-
Como usuario con privilegios de
root
, escriba el siguiente comando:apt-get -y update
apt-get -y install php5-memcached memcached
-
Cambie el parámetro de configuración memcached para
CACHESIZE
y-l
:-
Abra
/etc/memcached.conf
en un editor de texto. -
Busque el parámetro
-m
. -
Cambie su valor por lo menos
1GB
-
Busque el parámetro
-l
. -
Cambiar su valor a
127.0.0.1
olocalhost
-
Guarde los cambios en
memcached.conf
y salga del editor de texto. -
Reinicie memcached.
service memcached restart
-
-
Reinicie el servidor web.
Para Apache,
service apache2 restart
-
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:
-
Crear un archivo de
phpinfo.php
en el docroot del servidor web:<?php // Show all information, defaults to INFO_ALL phpinfo();
-
Vaya a esa página en el explorador web. Por ejemplo:
http://192.0.2.1/phpinfo.php
-
Asegúrese de que memcached se muestre de la siguiente manera:
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