Uno de los problemas con los que todo webmaster tiene que lidiar al lanzar su página web es la optimización del rendimiento para conseguir una velocidad de carga aceptable. Este factor es fundamental para cuidar la experiencia del usuario, y los motores de búsqueda lo tienen muy en cuenta a la hora de posicionarla, por lo que es vital conseguir una respuesta del servidor lo más eficiente posible.
Por mucho que os hablen de que el peso de vuestra página web no debe ser superior a los 100 Kb, lo más importante en realidad es cuidar el tiempo que tardará en poder visualizarse el contenido en la pantalla del usuario. Esto es lo que se conoce como tiempo de renderización de la web en el navegador.
Hay 3 líneas de trabajo fundamentales:
- Rendimiento del servidor que procesa la petición de la página.
- Ubicación de los recursos solicitados.
- Optimización de los elementos que se ejecutan en el navegador.
En esta ocasión, he querido dividir el artículo en varias partes, para que resulte menos denso y enfocar cada entrada a un perfil diferente de lector (propietario de un sitio web sin conocimientos de programación y webmaster avanzado). En esta ocasión vamos a ver las 3 líneas de trabajo principales sobre las que habrá que hacer hincapié:
Rendimiento del servidor
Cuando un usuario solicita un recurso de un sitio web, el servidor donde está alojado tarda un tiempo en procesar la petición. Lógicamente, si el sitio web está compuesto por una página estática con el 99% del contenido en formato texto y sin apenas elementos visuales, el servidor tardará muy poco en procesarla. Pero si queremos una página medianamente profesional que sea atractiva para el usuario, necesitamos contar con un servidor potente que nos dé una respuesta rápida.
Mi consejo es que contrates un servicio de alojamiento de calidad, que te ofrezca las máximas garantías, teniendo en cuenta que lo barato al final siempre sale caro. Si quieres acertar en este punto, te recomiendo que sigas los consejos para elegir hosting de Arturo García. Ten en cuenta que esto es como cuando vas a comprarte un PC, tienes que buscar el equipo con las mejores características dentro de tus posibilidades (procesador, memoria RAM, tipo de disco duro, sistema operativo…etc.).
Ubicación de los recursos solicitados
Como decíamos, al solicitar una página de un sitio web se tarda un tiempo en recibir respuesta del servidor donde está ubicada dicha página. En este tiempo el servidor ha de recibir, procesar y entregar la respuesta a la petición, lo que se conoce como latencia de la red. Lógicamente cuanto más alejado esté el usuario de la ubicación física del recurso, más se dilatará este proceso.
Esta es la cuestión por la que siempre recomiendo pagar un poco más por un alojamiento web ubicado físicamente en el propio país donde se encuentran los usuarios a los que está enfocado el sitio. No sólo es un arrebato de patriotismo que me surge cuando veo la deslocalización de las empresas que van a China y se cargan el Producto Interior Bruto de mi país, sino una cuestión puramente práctica.
Sin embargo, esta técnica nos limitaría a enfocarnos siempre a varios países y, en países tan grandes como Estados Unidos, pagar por un hosting patrio no garantizaría eliminar la latencia. Por eso existen los servicios CDN.
¿Qué son los CDN?
CDN, es el acrónimo de Content Delivery Network, en castellano Red de Entrega de Contenidos. Básicamente lo que hacen estas redes es replicar el contenido de un sitio web en sus diferentes nodos, de manera que, cuando un usuario solicita un recurso, se le ofrece la copia que está ubicada físicamente más cerca de él. Así, reducimos al máximo la latencia, maximizando el ancho de banda, además de conseguir otras ventajas, como una mayor disponibilidad del sitio web.
Por eso es recomendable que si te enfocas a varios países o no puedes cubrir adecuadamente el área geográfica con el hosting que vas a contratar, añadas al paquete un servicio CDN. Eso sí, ten en cuenta que debes asegurarte de que los nodos que componen la CDN tengan un rendimiento óptimo que procese la petición lo más rápido posible. Si quieres saber más sobre este tema, te recomiendo leer las 11 preguntas frecuentes sobre CDN (en inglés).
Optimización de los elementos que se ejecutan en el navegador
El 80% del tiempo de respuesta de un sitio web tiene que ver con lo que se ejecuta del lado del cliente (nombre que se da a la entidad que realiza la solicitud del recurso, es decir, el navegador web). De modo que esta cuestión es la que más puede ralentizar el tiempo de carga, muy por encima del tamaño. Hablamos principalmente de los siguientes elementos:
- Código fuente: HTML, CSS, JavaScript
- Contenido multimedia: Imágenes, Vídeos
Cuanto más dinamismo queramos darle a la página, cuanto más rico y atractivo queramos que sea el contenido para el usuario, más problemas tendremos para resolver esta cuestión. Esta es la principal razón por la que Google cuenta con la página más simple que puedas imaginar, para reducir los tiempos de carga, aumentando así el número de búsquedas realizadas por los usuarios y consiguiendo de este modo más impresiones de publicidad. Y la principal razón para la que fomentan el uso de páginas aceleradas para móviles AMP, que son páginas muy muy básicas pero que cargan rápido en dispositivos móviles.
Pero eso no significa que tengamos que renunciar a un sitio web dinámico e interactivo. En la próxima entrada, si quieres saber qué puedes hacer para resolver estas cuestiones, te recomiendo mi artículo sobre cómo optimizar la velocidad de carga de tu web fácilmente.
Hola Luis
El asunto con el hosting es que a veces no queda otra opción que contratarlo en otro país
Así que habría que echar mano a otros recursos para mejorar la velocidad de nuestra web
Saludos