web performance optimization (wpo) retreat meli 2011

35
Web Performance Optimization Retreat 2011 [email protected] [email protected]

Upload: santiago-aimetta

Post on 09-Jul-2015

606 views

Category:

Technology


4 download

DESCRIPTION

Resumen sobre los tips básicos a considerar para tener una web rápida

TRANSCRIPT

Page 1: Web Performance Optimization (WPO) retreat meli 2011

Web PerformanceOptimization

Retreat 2011 [email protected]@gmail.com

Page 2: Web Performance Optimization (WPO) retreat meli 2011

Agenda

•Motivación•Buenas practicas•Herramientas

Page 3: Web Performance Optimization (WPO) retreat meli 2011

Motivación

Page 4: Web Performance Optimization (WPO) retreat meli 2011

The Google Analytics exit rate for different page load times collected from Wikia data. Measured over 29 million pageviews (2009)

Page 5: Web Performance Optimization (WPO) retreat meli 2011

+500 ms -> -20% traffic (Google -2008)

+400 ms -> -5 a 9% Full page traffic (Yahoo-2008)

+100 ms -> -1% sales (Amazon-2008)

+400 ms -> -0.59% searches/users (Google -2009)

+2000 ms -> -4.3% revenues/users (Bing -2009)

Page 6: Web Performance Optimization (WPO) retreat meli 2011

#1 Anatomía de una web sana

Page 7: Web Performance Optimization (WPO) retreat meli 2011
Page 8: Web Performance Optimization (WPO) retreat meli 2011

Buenas Practicas

Page 9: Web Performance Optimization (WPO) retreat meli 2011

Lo básico

•Enviar contenido zipeado.•Recursos estáticos bien cacheados.•Js y Css externalizados.•Css at the top, Js at the bottom.

Page 10: Web Performance Optimization (WPO) retreat meli 2011

Gzip•Para TODO el contenido (estático y dinámico)•Reducción de un 70% del peso de la respuesta•90% de los browsers soportan gzip•Hilando fino: para comprimir aún más...•Css: Key-values ordenados alfabéticamente•Html: Atributos ordenados alfabéticamente•Usar sólo “ o sólo ‘•Minimización de JS y CSS•Google mejoró un 1.5% la compresión

Page 11: Web Performance Optimization (WPO) retreat meli 2011
Page 12: Web Performance Optimization (WPO) retreat meli 2011

Cache

•Cachear componentes ayuda a reducir el número de requests•80% page views se hacen con la cache llena (Yahoo)•Search •HTML = 5minutos•CSS,JS,imágenes = 1mes

Page 13: Web Performance Optimization (WPO) retreat meli 2011

Second View

Page 14: Web Performance Optimization (WPO) retreat meli 2011

Externalizar CSS y JS

•Mejora el cacheo•Ayuda a compartir recursos (+cacheo)•Tradeoff cantidad de requests (inline)

Page 15: Web Performance Optimization (WPO) retreat meli 2011

Reducir la cantidad de requests

•Combinar scripts en un archivo•Combinar styles en un archivo

•Combinar imágenes en sprites

Page 16: Web Performance Optimization (WPO) retreat meli 2011

Stylesheet en el head

•Acelera el render•Ayuda a que el render sea progresivo

Javascript después de OnLoad

• Los elementos script blockean el render

Page 17: Web Performance Optimization (WPO) retreat meli 2011
Page 18: Web Performance Optimization (WPO) retreat meli 2011

Postcarga – Hay vida después del onload?

•Después del onload•Script•Trackeos•Imágenes•CSS extras

Page 19: Web Performance Optimization (WPO) retreat meli 2011
Page 20: Web Performance Optimization (WPO) retreat meli 2011

Hasta acá está todo muy al alcance de nuestras

manos..ahora hilemos un poco más fino

Page 21: Web Performance Optimization (WPO) retreat meli 2011

Uso de CDN•Mejor tiempo de respuesta en base a servir contenidos teniendo en cuenta la proximidad•Contenido estático

<- sin CDN

<- con CDN

Page 22: Web Performance Optimization (WPO) retreat meli 2011

DNS Lookups•Resolver un lookup cuesta entre 20-120 ms•1 dominio principal y hasta 4 de recursos•Trade off paralelismo•Los DNS lookups bloquean las descargas en paralelo

Request por dominio

Page 23: Web Performance Optimization (WPO) retreat meli 2011

Dominios cookieless

•No enviar cookies en los dominios static, imágenes, css , js.•Muchos proxies no cachean dominios con cookies

CSSHTML

Page 24: Web Performance Optimization (WPO) retreat meli 2011
Page 25: Web Performance Optimization (WPO) retreat meli 2011

Imágenes

•Optimizar imágenes•Eliminar metadatos reduce el peso sin perdida de calidad.•Optimizar css sprites•No escalar imágenes en el html•Setear width y height acelera el render

Page 26: Web Performance Optimization (WPO) retreat meli 2011

Reducir el número de elementos del DOM

•Generación del DOM más rápida•Búsquedas de elementos más rápida•700 elementos -> OK!

Page 27: Web Performance Optimization (WPO) retreat meli 2011

Buffer flushing

•La respuesta del backend toma entre 150 y 500ms•Se puede enviar html que está listo en ese momento.•Mejora la percepción del usuario

Page 28: Web Performance Optimization (WPO) retreat meli 2011

Herramientas

Page 29: Web Performance Optimization (WPO) retreat meli 2011

•Tests con múltiples browsers y ubicaciones•Network activity•Detalles de los request•Checklist + reporte de pageSpeed•Repeat view•Content breakdown by MIME and Domain•*.har•Load detail•Comparaciones

Page 30: Web Performance Optimization (WPO) retreat meli 2011
Page 31: Web Performance Optimization (WPO) retreat meli 2011
Page 32: Web Performance Optimization (WPO) retreat meli 2011
Page 33: Web Performance Optimization (WPO) retreat meli 2011

Speed tracer

•Network activity•Monitor de eventos

Page 34: Web Performance Optimization (WPO) retreat meli 2011

Preguntas

Page 35: Web Performance Optimization (WPO) retreat meli 2011

• Imágenes– http://www.flickr.com/photos/jamesgold/153504/– http://www.flickr.com/photos/toasty/472330111/– http://www.flickr.com/photos/booksin/3655138991/– http://www.flickr.com/photos/anavrin/194771480/– http://www.flickr.com/photos/halfangel36/2371628236/– http://www.flickr.com/photos/gru/148724512/