Actualizado el domingo, 5 noviembre, 2017
En este articulo veremos como instalar mod_pagespeed y Memcached en Debian, Ubuntu y todos sus derivados.
El tiempo de carga es muy importante en una pagina web, de forma que podamos ofrecer al usuario una excelente experiencia de uso, ademas… los motores de búsqueda lo tienen en cuenta a la hora de elaborar sus ranking, por tanto no tienes excusas si quieres que tu web sea valorada.
Hace ya unos años, Google desarrollo un módulo para apache, llamado «mod_pagespeed» (daba problemas en algunas configuraciones de servidor, ahora funciona bastante bien) y su función es optimizar la entrega del contenido de un servidor web apache, por tanto reducimos los tiempos de carga de las páginas, sobre todo cuando usamos archivos CSS, javascript, etc…, tambien acelera la carga de imágenes. En este manual instalaremos y configuraremos mod_pagespeed y Memcached. Su uso es valido en cualquier instalación con Apache.
Instalar mod_pagespeed y Memcached
Instalar mod_pagespeed
Debian y Ubuntu 64 bits:
cd /tmp wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb dpkg -i mod-pagespeed-stable_current_amd64.deb
Debian y Ubuntu 32 bits:
cd /tmp wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb dpkg -i mod-pagespeed-stable_current_i386.deb
Recargamos y reiniciamos apache:
service apache2 reload
service apache2 restart
Instalar Memcached
Debian, Ubuntu y todos sus derivados.
apt-get -y install memcached netcat
Comprobamos que memcached inicia correctamente:
ps -ef | grep -i memcached
Ejemplo de salida:
memcach+ 774 1 0 sep23 ? 00:00:58 /usr/bin/memcached -u memcached -p 11211 -m 200 -c 1024 -l 127.0.0.1 root 17549 17526 0 09:41 pts/2 00:00:00 grep --color=auto -i memcached
Configuramos Memcached.
nano /etc/memcached.conf
Modificamos según nuestras necesidades:
# Start with a cap of 64 megs of memory. It's reasonable, and the daemon default # Note that the daemon will grow to this size, but does not start out holding this much # memory -m 256 # Default connection port is 11211 -p 11211 # Run the daemon as root. The start-memcached will default to running as root if no # -u command is present in this config file -u memcache # Specify which IP address to listen on. The default is to listen on all IP addresses # This parameter is one of the only security measures that memcached has, so make sure # it's listening on a firewalled interface. # -l 127.0.0.1
Reiniciamos:
systemctl restart memcached
Que inicie al arrancar el servidor:
systemctl enable memcached
Comprobamos que este funcionando y trabajando:
echo "stats settings" | nc localhost 11211
Ejemplo de salida:
STAT maxbytes 268435456 STAT maxconns 1024 STAT tcpport 11211 STAT udpport 11211 STAT inter NULL STAT verbosity 0 STAT oldest 0 STAT evictions on STAT domain_socket NULL .................... ....................
Instalamos la extensión php
apt-get install -y php php-memcache
Reiniciamos memcached y apache:
systemctl restart memcached systemctl restart apache2
Abrir puerto 11211
En caso que estés usando ufw o firewalld, te recomiendo que concedas permisos al puerto de memcached.
UFW:
ufw allow 11211/tcp ufw reload
Firewalld:
firewall-cmd --permanent --zone=public --add-port=11211/tcp firewall-cmd --reload