49
Buenas prácticas para la optimización de sitios web Luis Miguel Martín @lmmartin

Buenas prácticas para la optimización de sitios web

Embed Size (px)

Citation preview

Page 1: Buenas prácticas para la optimización de sitios web

Buenas prácticas para laoptimización de sitios

webLuis Miguel Martín

@lmmartin

Page 2: Buenas prácticas para la optimización de sitios web

Buenas prácticas para laoptimización de sitios

webLuis Miguel Martín

@lmmartin

Page 3: Buenas prácticas para la optimización de sitios web

“Estamos de vuelta…”

Page 4: Buenas prácticas para la optimización de sitios web

¿Quién soy?

Page 5: Buenas prácticas para la optimización de sitios web

¿De qué vamos a hablar?

Page 6: Buenas prácticas para la optimización de sitios web

Optimizar un sitio web

Page 7: Buenas prácticas para la optimización de sitios web

Aumentar la velocidad de carga

Page 8: Buenas prácticas para la optimización de sitios web

Para ello realizaremos ajustes…

Page 9: Buenas prácticas para la optimización de sitios web

… y llevaremos a cabo una serie debuenas prácticas

Page 10: Buenas prácticas para la optimización de sitios web

¿Por qué? ¿Con qué propósito?

Page 11: Buenas prácticas para la optimización de sitios web

Acelerar la respuesta de la web al usuario

Page 12: Buenas prácticas para la optimización de sitios web

Descargar de procesos al servidor

Page 13: Buenas prácticas para la optimización de sitios web

Consumir menos transferencia

Page 14: Buenas prácticas para la optimización de sitios web

EN DEFINITIVA…

Page 15: Buenas prácticas para la optimización de sitios web

Satisfaccióndel cliente

Page 16: Buenas prácticas para la optimización de sitios web

Vender más

Page 17: Buenas prácticas para la optimización de sitios web

Diferenciarnos de la competencia

Page 18: Buenas prácticas para la optimización de sitios web

Ahorro en nuestro hosting

Page 19: Buenas prácticas para la optimización de sitios web

¿DE VERDAD ES IMPORTANTE EL RENDIMIENTO?

Page 20: Buenas prácticas para la optimización de sitios web

– FUENTE: Strangeloop

“El 57% de los visitantes abandona una web si tarda más de 3 segundos en cargar”

“De ellos, el 80% no volverá”

“Al menos la mitad contarán a amigos y familiares sobre su mala experincia”

“Amazon aumenta un 1% su beneficio cada 100ms de mejora”

Page 21: Buenas prácticas para la optimización de sitios web

Entonces, empecemos…

Page 22: Buenas prácticas para la optimización de sitios web

Dos objetivos a conseguir:

Page 23: Buenas prácticas para la optimización de sitios web

1. Número de archivos pequeño

Page 24: Buenas prácticas para la optimización de sitios web

2. Tiempos de carga reducidos

Page 25: Buenas prácticas para la optimización de sitios web

¿Cómo reducimos el número de archivos?

Page 26: Buenas prácticas para la optimización de sitios web

Reducir el número de archivos• Combinar archivos JavaScript y CSS

• Sacar partido a las media-queries frente importar multiples CSS (@import) o emplear varios archivos (print.css)

• Emplear Sprites CSS para combinar imágenes

• Sacar partido a la caché del navegador

• Distribuir archivos estáticos y librerías desde CDNs

Page 27: Buenas prácticas para la optimización de sitios web

Reducir el número de archivos• Combinar archivos JS y CSS

Idealmente un archivo por tipo, máximo dos

• Sacar partido a las media-queries frente importar multiples CSS (@import) o emplear varios archivos (print.css)

Más rápido que @import y reducimos el número de archivos

Page 28: Buenas prácticas para la optimización de sitios web

Reducir el número de archivos• Emplear Sprites CSS para combinar imágenes

Page 29: Buenas prácticas para la optimización de sitios web

Reducir el número de archivos• Sacar partido a la caché del navegador

De esta manera, los archivos ya descargados no se vuelven a descargar. Es necesario establecer las cabeceras indicando el tiempo de expiración.

• Distribuir archivos estáticos y librerías desde CDNs

Imágenes de galerías, JS, archivos pesados, etc. Así podemos realizar más descargas simultáneas, mayor disponibilidad y rendimiento en archivos multimedia.

Page 30: Buenas prácticas para la optimización de sitios web

¿Cómo minimizamos los tiempos de carga?

Page 31: Buenas prácticas para la optimización de sitios web

Minimizar tiempos de carga• Optimizar imágenes (tamaño correcto, formato

adecuado, evitar escalado HTML,…)

• Minimizar y comprimir archivos JS, CSS,…

• Simplificar, reducir y optimizar el código

• Emplear HTML + CSS en lugar de imágenes

• Compresión GZIP en el servidor

• Caché en el servidor

Page 32: Buenas prácticas para la optimización de sitios web

Minimizar tiempos de carga• Optimizar imágenes (tamaño correcto, formato

adecuado, evitar escalado HTML,…)

Ajustar las imágenes al tamaño en el que se van a mostrar, no emplear el escalado HTML.

• GIF/PNG 8 - Iconos, botones y imágenes sencillas y/o con texto

• PNG 24 - Transparencias complejas • JPG - Fotografías (optimizar la compresión y

siempre progresivos)

Page 33: Buenas prácticas para la optimización de sitios web

Minimizar tiempos de carga• Minimizar y comprimir archivos JS, CSS,…

Eliminar espacios, comentarios, etc. Reducción del 20-30% de media.

• Simplificar, reducir y optimizar el código

Realizar código sencillo y válido según estándares.

• Emplear HTML + CSS en lugar de imágenes (interfaz)

Botones, degradados, fondos,… Se renderiza más rápido, es mejor para el SEO y es más fácil de modificar.

Page 34: Buenas prácticas para la optimización de sitios web

Minimizar tiempos de carga

• Compresión GZIP en el servidor

Lo permiten la mayoría de los navegadores actuales. Exige algo de configuración en el servidor (sencilla). Reduce el tamaño de las peticiones al servidor.

• Caché en el servidor

Disminuye la carga del procesador. Ideal para contenido dinámico.

Page 35: Buenas prácticas para la optimización de sitios web

Casos prácticos

Page 36: Buenas prácticas para la optimización de sitios web

Caso práctico 1 Tienda online Woocommerce

SITUACIÓN INICIAL

• Hosting compartido

• 20 GB/mes transferencia

• 275 peticiones

• ¡¡¡12.9 MB página de inicio!!!

• Carga en 17.22 segundos

Page 37: Buenas prácticas para la optimización de sitios web

Caso práctico 1 Tienda online Woocommerce

Page 38: Buenas prácticas para la optimización de sitios web

Caso práctico 1 Tienda online Woocommerce

SITUACIÓN FINAL

• Hosting dedicado (virtual)

• Transferencia ilimitada

• 163 peticiones

• 5.5 MB página de inicio

• Carga en 2,69 segundos

Page 39: Buenas prácticas para la optimización de sitios web

Caso práctico 1 Tienda online Woocommerce

Page 40: Buenas prácticas para la optimización de sitios web

Caso práctico 1 Tienda online Woocommerce

Page 41: Buenas prácticas para la optimización de sitios web

Caso práctico 2 Tienda online Magento

• Se habilitó la compresión GZIP • JS y CSS minimizados y comprimidos en un archivo,

respectivamente • Archivo PHP de configuración se cambió por CSS

Page 42: Buenas prácticas para la optimización de sitios web

Consejos

Page 43: Buenas prácticas para la optimización de sitios web

Sobre el hosting

• Tendrás aquello por lo que has pagado (verdad verdadera)

• Huye los hosting compartidos (lo barato sale caro)

• Pregunta por los datos de rendimiento del hosting y prueba antes de pagar (hay empresas que te permiten probar 30 días)

Page 44: Buenas prácticas para la optimización de sitios web

JS y CSS

• Combina, minimiza y comprime todo lo que puedas estos archivos

• Incluye el CSS arriba (<head></head>) y el JS abajo (justo antes del </body>)

• No utilices filtros ni expresiones CSS

Page 45: Buenas prácticas para la optimización de sitios web

Imágenes

• Siempre el tamaño exacto con el que se mostrará en pantalla (ojo al responsive)

• El formato adecuado siempre es la mejor opción

• No utilices archivos animados (GIF/PNG)

• JPG progresivos siempre

Page 46: Buenas prácticas para la optimización de sitios web

Otros

• Vigila los links rotos y las páginas 404

• Evita las redirecciones. Utiliza los 301, 302,…

• No uses <img src=“”>

• TESTEA, TESTEA, TESTEA, TESTEA,…

Page 47: Buenas prácticas para la optimización de sitios web

Recursos

Page 48: Buenas prácticas para la optimización de sitios web

Recursos• Yahoo Performance

https://developer.yahoo.com/performance/

• Google PageSpeed https://developers.google.com/speed/pagespeed/ https://developers.google.com/speed/

• Extensión YSLOWhttp://yslow.org/

• Pingdon Toolshttp://tools.pingdom.com/

Page 49: Buenas prácticas para la optimización de sitios web

Gracias!