Consejos para optimizar Drupal 8 (parte 1: servidor)

Imagen
Autopista de noche con luces de coches

Ha habido mucho debate sobre si Drupal 8 es mas rápido que Drupal 7, ya que sin cache, Drupal 7 es mucho más rápido, pero con las caches y optimizaciones del core, Drupal 8 es imbatible. A pesar de esto, podemos querer optimizar Drupal ya que podemos sentirlo lento en algunas ocasiones.

Vamos a ver cómo podemos mejorar el rendimiento de nuestra web a nivel del servidor, esta no es una web dedicada a servidores, ademas cada uno es un mundo y nunca son iguales, a si que tocara buscar la solución para nuestro servidor, lo mejor será contactar con quien nos administre el servidor para que aplique los cambios.

No usar hosting compartido

Esto puede ser complicado si no tenemos suficientes recursos, ya que mantener un VPS o un dedicado puede suponer un coste económico grande, pero si queremos que nuestra web no tenga problemas de rendimiento, es lo mejor que podemos hacer, o buscarnos un proveedor de hosting que nos asegure un rendimiento aceptable aunque paguemos un poco menos.

Sustituir MySQL por MariaDB

MySQL ha sido un importante sistema de gestión de bases de datos que ha dominado prácticamente en el ámbito libre (postgresql y otras rondan al acecho). Pero desde que nació MariaDB y comenzó a mejorar el rendimiento de MySQL, lo recomendable es utilizar MariaDB.

Utiliza PHP 7

PHP 7 ofrece un incremento de rendimiento sobre PHP 5 increíble; pero aun y todo, esto es algo prácticamente forzado, actualmente estamos con Drupal 8.6 y es la ultima que soportara PHP 5 de manera oficial, de modo que estamos obligados a utilizar PHP 7 en nuestros servidores, ya que cuando salga Drupal 8.7, no será compatible con PHP 5.

Reemplazar Apache por Nginx

Apache ha sido un dominante en lo referente a servidores web, pero su competidor Nginx, ofrece un rendimiento estupendo y en ocasiones supera a Apache, a si que es recomendable utilizar Nginx como reemplazo a Apache.

Comprime tu web con Gzip

Los servidores web como Apache y Nginx permite comprimir los datos que enviamos para que el cliente se descargue la web mas rápidamente. Es importante esto ya que a menos datos enviados, más rápido cargara la web, de modo que activar la compresión con Gzip es una muy buena idea.

Activar el protocolo HTTP2

El protocolo HTTP 1.1, tiene un limite importante que afecta de manera negativa al rendimiento de nuestra web, ya que con HTTP 1.1, hace falta una conexión al servidor por archivo solicitado, con HTTP 2.0, con una sola conexión, se pueden descargar todos los archivos, esto que parece algo sin mucha importancia, puede suponer un incremento muy grande.

Utilizar una CDN para optimizar Drupal

Las CDN siempre son útiles para poder servir datos en paralelo, podemos crear nuestra propia CDN o utilizar un servicio externo, existen algunos gratuitos para sitios web con muy poco trafico, como CloudFlare.

Aquí terminamos en lo referente a la parte del servidor, existen otras herramientas como Redis o Varnish, pero sobre Redis no puedo hablar ya que nunca lo he utilizado, y Varnish puede sernos útil en nuestro sitio, pero dependiendo del tipo de trafico, ya que para usuarios anónimos, es recomendable usarlo, pero no para los autentificados, para estos es mejor hacer uso de BigPipe.

Hasta aquí la primera parte, en la segunda parte, veremos cómo podemos optimizar nuestro sitio con módulos y configuraciones.

Artículos relacionados: