Informe de rendimiento y performance para tu alojamiento

¿Tienes problemas de rendimiento en tu sitio web y te gustaría saber que mejoras o cambios podemos aplicar a nivel de servidor? ¿Quieres conocer nuestras recomendaciones para algunos aspectos a mejorar?

Solicítanos un informe de “Performance” de tu sitio web.

¿En que consiste?

En este informe realizaremos un estudio con una serie de herramientas propias y otras externas para ver que puntos son mejorables y atacar directamente a lo que, generalmente, hace que la web sea lenta, buscando siempre conseguir la máxima puntuación en portales (como GTMetrix, Pagespeed, …) y el mejor rendimiento.

Este informe consta de distintos apartados, los cuales aclararemos a lo largo de esta entrada.

General

Análisis de Pagespeed Insights

En este apartado analizaremos los puntos más genéricos a nivel de performance, que segmentamos y detallamos a continuación.

Uno de los puntos a tener en cuenta será la puntuación de Pagespeed Insights. Utilizaremos sus métricas para analizar los puntos débiles de la página web, herramientas que nos ayudaran a encontrar penalizaciones de tiempo a la hora de cargar el proyecto, y trabajaremos conjuntamente con el equipo de desarrollo en mejorarlas.

Análisis de Webpagetest

Realizaremos un test donde se nos indicarán una serie de puntuaciones acerca la paquetería de nuestro servidor (si está actualizada o no), TTFB, compresión Gzip, compresión de imágenes y si hacemos uso de alguna CDN.

Este test nos brindará un análisis de los tipos de ficheros que más tardamos en procesar además de los dominios de los que provienen.

Análisis de contenido externo

Buscaremos cuantas requests de las que están siendo de manera externa y el espacio que estas ocupan dentro del total del site.

Versión de PHP

Nos fijaremos también en que el site trabaje con una versión de PHP adecuada.

Y con adecuada nos referimos a que tenga soporte activo o que reciba parches de seguridad, ya que esto nos garantizará una mayor seguridad evitando código obsoleto y vulnerable que pueda darnos problemas frente a algún acceso no deseado, así como que nuestro sitio web sea mas rápido, ya que con cada actualización de PHP el rendimiento mejora en aspectos, como el uso de memoria, que puede resultar muy beneficioso, así como nuevas funciones que su equipo de desarrollo va añadiendo. Además siempre procuraremos trabajar con FPM, si el site lo permite, debido a los múltiples beneficios de rendimiento que esto ofrece.

Tipo de disco integrado

En caso de estar trabajando con tecnología obsoleta trataremos de realizar el cambio de servidor para que pase a utilizar disco SSD y evitar latencias en el acceso a disco.

Resolución DNS

Configuraremos de manera interna los DNS para que en caso de que haya algún tipo de problema el servidor sepa donde están alojados los nombres a los que va a contactar. Adicionalmente intentaremos trabajar con las DNS de CloudFlare para su propagación instantánea y poder aprovechar el resto de sus servicios.

Análisis de consultas a BBDD (SlowQueries)

Por otra parte revisaremos también servicios que puedan estar perjudicando el funcionamiento de la web y que provoquen lentitud, poder encontrar el origen y poder erradicarlo. Un ejemplo es nuestra revisión de las consultas que puedan estar ralentizando la base de datos: haciendo hincapié en las consultas que llevan ejecutándose más tiempo de lo esperado.

Tecnologías HTTP2 – ALPN

Revisaremos también si el site está utilizando el protocolo HTTP/2, este es un protocolo binario que conserva la misma semántica que el protocolo HTTP1.X lo que significa que todos los verbos, cabeceras, etc. siguen funcionando sin cambios. De hecho, HTTP/2 busca resolver los defectos que tiene la comunicación a través TCP (la capa de transporte dentro del protocolo HTTP), este protocolo permite al navegador poder enviar más peticiones y respuestas diferentes a través de una misma conexión.
También revisaremos si soporta ALPN es una extensión que permite a la capa de aplicación negociar qué protocolo debe realizarse a través de una conexión segura de manera que se eviten viajes de ida y vuelta adicionales y que sea independiente de los protocolos de la capa de aplicación. Es necesario para conexiones HTTP/2 seguras, lo que mejora la compresión de las páginas web y reduce su latencia en comparación con HTTP/.x.

Contenido dinámico

TTFB y su importancia

Otro de los aspectos muy importantes a revisar será el TTFB.

El TTFB es el tiempo desde que el usuario comenzó a navegar en la página hasta que llegó el primer bit de la respuesta del servidor. La mayor parte de este tiempo se suele denominar “tiempo de back-end” y es la cantidad de tiempo que el servidor dedicó a crear la página para el usuario.

¿Porque es tan importante el TTFB?

Es tan importante ya que es utilizado a menudo por motores de búsqueda web como Google, Yahoo o DuckDuckGo para mejorar los rankings de búsqueda, ya que este sitio web responderá a la solicitud más rápido, y se podrá navegar antes que otros sitios con peor tiempo.

Tras realizar el analisis del TTFB trabajaremos el contenido que penaliza a estos tiempos mediante reconfiguraciones y mejoras de sistemas de cache como Smarty (Prestashop), Redis (Magento), W3 total cache (WordPress)…

Recomendación de NewRelic

NewRelic es una herramienta para los desarrolladores que recomendamos a los sites que cuentan con un TTFB que esté por encima del segundo. Podremos monitorizar conexiones HTTP, monitorizar errores, fijar alertas sobre umbrales de datos de referencia, obtener estadísticas acerca del rendimiento de la aplicación en distintos dispositivos, y estadísticas de los usuarios según diferentes versiones de software.

Además podremos observar el tiempo de respuesta de transacciones web, en el que por ejemplo podremos ver donde se gasta más tiempo para poder trabajar en mejorar el recurso. Podremos ver también los rastros de transacción y compararlos entre ellos. Podremos analizar, además, la tasa de error y rendimiento y las relaciones entre cada uno de ellos; el impacto que ocasiona en el uso de CPU o la memoria y como puede verse afectado en el tráfico de nuestra web.

Esta herramienta está enfocada para los desarrolladores puedan analizar y detectar “cuellos de botella” en el código, o mejoras en el mismo, que permitan un mejor rendimiento a la web.

Caché en RAMfs

Para mejorar el TTFB, también podemos configurar las carpetas de cache del contenido en RAMfs, además de recomendar la utilización de NewRelic, como se ha comentado anteriormente.

Contenido estático​

Otro apartado que revisamos con mas detalle en nuestro análisis de “performance” sobre las páginas es el contenido estático.

Este ocupa una parte extensa del análisis debido a la cantidad de puntos que revisamos.

Cantidad de requests

El test previamente lanzado de WebPageTest, nos será útil para extraer de manera mas detallada un análisis de los tiempos de la web, monitorizar que dependencias externas y poder analizar campos como las actualizaciones de seguridad de paquetería con la que trabaja.

Trataremos detalladamente las peticiones para poder detectar hasta que punto nos penalizan las dependencias externas a nuestra web, el tipo de contenido que más tiempo tarda en cargar.

CDN (Content Delivery Network)

Trataremos las “requests” que se realizan, siempre sugerimos tecnologías como la CDN de Cloudflare, la cual nos permite servir el contenido estático a modo de “caché” de manera distribuida entre el cliente y el servidor además de los múltiples beneficios que ofrece la plataforma en si.

Además, con esto conseguimos que tu web se muestre más rápido, reduciendo el TTFB, y añade una capa extra de seguridad. Ya que, con su sistema anti-DDos, en caso de ser atacado, podemos tener un control mas sencillo del bloqueo de IPs por rango, regiones, … en caso de ser necesario, y además de librarnos de escaneos indeseados o robots, en el caso de que nos ocasionen problemas.

Imágenes del sitio

Después de centralizar peticiones mediante la CDN, miraremos de que forma mejorar uno de los puntos importantes, como son las imágenes.

Compresión de imágenes

Realizaremos pruebas y lanzaremos los procesos de mejora de imágenes para atacar de manera inmediata este punto que tanto penaliza los tiempos.

Una vez hecho esto, comprobaremos hasta que punto estas imágenes pueden ser comprimidas y en nuestro caso contamos con herramientas propias de compresión de imágenes sin pérdida de calidad, que nos ayudan a mejorar el tiempo de carga de la web.

Compresión GZIP

Otros de los puntos a analizar a nivel de contenido estático serán la compresión GZIP del código de nuestra web y la cache de navegador, así como sus configuraciones.

Cache del navegador

Una buena configuración de las caches del mod_expires es una muy buena vía para optimizar ya que mediante la caché se consigue que los archivos se reutilicen, y no se necesite volver a realizar una descarga al realizar una visita de nuevo.

Actualización y optimización del código web

En este apartado revisaremos (al igual que cuando revisábamos que la versión de PHP fuese adecuada) si nuestro CMS tiene alguna actualización o si puede estar fuera de soporte o actualizaciones. Esto puede provocar grandes fallos de seguridad, que pueden derivarse en inyecciones de código, “hackeos” de la web o errores que nos impedirán trabajar correctamente.

Adicionalmente, se realizará un escaneo de librerías obsoletas para evitar posibles problemas de seguridad en nuestro CMS.

Revisión del console log

Revisaremos el “console log” del navegador para ver comprobar si hay errores en la carga de peticiones.

Tener errores en entornos en producción no es recomendable ya que puede influir en el rendimiento del sitio provocando peticiones adicionales, ya sea por proporcionar información o por tener errores en el sitio web.

Conclusiones

Finalmente para destacar los puntos a mejorar dejaremos unos consejos/conclusiones acerca de las mejoras o carencias que puede estar teniendo el site. Este se divide en un apartado de “Sistemas” y uno de “Desarrollo web”.

Sistemas

Comentaremos recomendaciones sobre caché, ya que dependiendo del CMS el sistema de caché puede variar, la CDN para la entrega del contenido estático, ideas relacionadas con las imágenes del site, temas de resolución DNS, PHP y algunas otras posibilidades que podemos tener en cuenta a la hora de trabajar juntos para mejorar el funcionamiento del sitio web.

Desarrollo web

En este apartado, para finalizar el informe, se comentarán las puntuaciones del primer test en Pagespeed Insights, destacando las erróneas y explicando a que hacen referencia para ver como se pueden tratar.

Toda esta información, y mucha más, la podréis encontrar en nuestros informes de “Performance”.

Para mas información no duden en contactarnos o para la resolución de cualquier duda que pueda surgir mediante [email protected] o bien llamando al 931763976 / 915939943