Blog de Duplika

Consumo de recursos y optimización de aplicaciones

El consumo de recursos en cuentas de hosting compartidas suele ser un inconveniente de las que muchas empresas no hablan y suelen tratar con el cliente directamente, sugiriendole migrar a un servidor dedicado.

Aunque ésto puede ser la solución, muchas veces el cliente no esta al tanto de lo sucedido y a veces pagar más de 10 veces lo que estaba abonando no le resulta del todo cómodo.

La realidad es que muchas veces, las aplicaciones utilizadas por los clientes pueden ser optimizadas con pequeños cambios, reduciendo el consumo de recursos sin necesidad de migrar a un servidor virtual o dedicado.

A continuación detallaremos alguna de las posibles mejoras, dependiendo de la plataforma, para intentar reducir el consumo, mantener a la empresa de hosting tranquila, aumentar la velocidad de carga del sitio y posiblemente evitar la migración a una cuenta mas costosa.

Mejores prácticas comunes a cualquier plataforma

  • Instalación de módulos / plugins: Muchas veces la instalación de agregados aparte impactan fuertemente sobre el rendimiento por lo que aconsejamos utilizar la menor cantidad de agregados posibles y desinstalar aquellos que no utilicemos.
  • Versiones actualizadas: Los desarrolladores suelen mejorar múltiples aspectos de rendimiento y seguridad. Aunque tener la última versión no es siempre sinónimo de mayor velocidad, si suele ser de mayor seguridad. Recuerden siempre tener la última versión actualizada de la plataforma y de los plugins.
  • Caché: La gran mayoría de las plataformas permiten activar el caché y el mecanismo en casi todos los casos es el mismo; guardar las consultas a la base de datos para evitar tener que repetirlas con cada nueva visita. La activación de ésto es una de las mayores causas de reducción de consumo.
  • Optimización de la base de datos: Desde su panel de control, via phpMyAdmin es posible ejecutar la optimización de todas sus tablas. Es conveniente realizar ésto al menos 1 vez a la semana en sitios de muchas visitas.

Drupal

  • Desde Administrar, Rendimiento es posible activar el caché en modo Normal o Agresivo.
  • Activar la compresión de los archivos agregados y CSS desde Administrar, Rendimiento.
  • DB Maintenance le permite ejecutar la optimización de la base de datos.
  • Memcache: Gracias a que en nuestro servidor ya se encuentra instalado memcaché, instalar éste módulo resultará muy fácil y acelerará reducirá la cantidad de consultas a la base de datos considerablemente.
  • Boost: En el caso de que la mayoría del tráfico sea por parte de visitantes no registrados, éste módulo mejorará su rendimiento al máximo.
  • El módulo Throttle le permite desactivar determinados módulos cuando el sitio posea más de X cantidad de visitantes anónimos.

WordPress

El primer y mas importante paso consiste en la instalación y configuración de W3 Total Cache. Éste plugin acelerará la carga de su blog, reducirá el espacio necesario para el caché y reducirá considerablemente el consumo de recursos en el servidor.

Pueden o bien importar las opciones recomendadas, descargando este archivo, el cual tienen que descomprimir e importarlo al final de la configuración del plugin. Si prefieren configurarlo manualmente, las opciones que deberían setear son las siguientes:

  • Page cache: Enable / Disk: Enhanced
  • Minify: Enable / Auto / Disk
  • Database Cache: Enable / Memcached
  • Object Cache: Enable / Disk
  • Browser Cache: Enable

Joomla

  • En Configuración Global, pestaña sistema, activar el caché y en gestor de caché seleccionar memcache, activando la opción Memcache Persistent. En host colocar localhost y en port, 11211.
  • Instalar el plugin JCH Optimize desde aquí

Moodle

  • Dentro de Site Admin, dirijanse a Server, Performance, Cache type y seleccionen memcache.
  • Habiliten el Record Cache en la misma sección
  • Activen language cache
  • Los archivos de log pueden crecer y relentizar el sitio con el transcurso del tiempo. Si notaron ésto, pueden reducir el "tiempo de vida" de cada log en Admin, Server, Cleanup
  • Encontrarán mas detalles sobre el rendimiento de Moodle acá.

Simple Machines Forum (SMF)

  • Desactivar conexiones persistentes desde Admin -> Server Settings -> Use a persistent connection
  • Desactivar detección de hostnames desde Admin -> Layout and Options -> Disable Hostname Lookups (activar checkbox)
  • Optimizar las tablas desde Admin -> Forum Maintence -> Hit Optimize Tables
  • Activar memcaché, escribiendo en confirmación "localhost:11211"

Magento

  • Instalar Fooman Speedster para comprimir y juntar todos los archivos CSS y JS.
  • Activar la compresión via GZIP descomentando la siguiente línea en .htaccess: #php_flag zlib.output_compression on

Iremos actualizando ésta guia de a poco, incorporando nuevas aplicaciones y métodos. Todos los que quieran colaborar pueden hacerlo dejando un comentario.