SlideShare a Scribd company logo
1 of 65
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],MOTIVACIÓN
Regla 1: Reducir HTTP Requests
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],UTILIZAR IMAGE MAPS
[object Object],[object Object],[object Object],UTILIZAR CSS SPRITES
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],UTILIZAR INLINE IMAGES
[object Object],[object Object],[object Object],[object Object],UNIFICAR SCRIPTS Y CSS
Regla 2: Content Delivery Network
[object Object],[object Object],[object Object],UTILIZAR CDN
Regla 3: Añadir Expires Header
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],EXPIRES HEADER
Regla 4: Componentes Gzip
[object Object],[object Object],[object Object],[object Object],[object Object],COMPONENTES GZIP
[object Object],PROXY CACHE (I)
[object Object],[object Object],[object Object],[object Object],PROXY CACHE (II)
Regla 5: CSS  en la cabecera
[object Object],[object Object],CSS
Regla 6: Scripts al final de la página
DESCARGAS PARALELAS ,[object Object],[object Object],[object Object]
2 descargas paralelas por host. 4 descargas paralelas por host. 8 descargas paralelas por host.
Utilizar CNAMEs (alias DNS) para dividir sus componentes en múltiples hostnames.
JavaScripts bloquean la descarga paralela.
http://stevesouders.com/hpws/move-scripts.php Diferencia de tiempo entre scripts en parte superior a la parte inferior. http://stevesouders.com/hpws/js-blocking.php Ejemplo de cómo el script bloquea las descargas de los componentes.
Regla 7: Evitar expresiones CSS
[object Object],[object Object],EXPRESIONES CSS Width: expression(document.body.clientWidth < 600 ? “600px” : “auto”); ,[object Object],[object Object],[object Object],[object Object]
SOLUCIÓN ,[object Object],<style> P{ background-color: expression(altBgcolor(this); } </style> <script type=“text-javascript”> function altBgcolor(elem){ elem.style.backgroundColor = (new Date()).getHours()%2 ? “#F08A00” : “#B8D4FF”; } </script>
SOLUCIÓN ,[object Object]
Ejemplo de CSS Expression. http://stevesouders.com/hpws/expression-counter.php Ejemplo de One-Time Expression. http://stevesouders.com/hpws/onetime-expressions.php
Regla 8: Hacer Javascript y CSS externos
JS/CSS EXTERNOS vs JS/CSS INTERNOS   ,[object Object],Es aconsejable para sites con pocas páginas visitadas por usuario. ,[object Object],Permite cachear los archivos para no volver a descargarlos. Es aconsejable para sites donde el usuario visita muchas páginas al mes o por sesión.
JAVASCRIPT/CSS EXTERNOS ,[object Object],[object Object],Es aconsejable para sites con pocas páginas visitadas por usuario. Es aconsejable para sites donde el usuario visita muchas páginas al mes o por sesión.
JAVASCRIPT/CSS INTERNOS ,[object Object],Tiene muchas visitas al mes pero solo una visita por sesión. Muchos usuarios vacían la caché al cerrar el navegador. En mucho casos es la única página visitada del site por lo que no comparte JavaScripts ni CSS con otras páginas.
POST-ONLOAD DOWNLOAD La home utiliza JavaScripts / CSS internos pero al cargarse esta. Con el evento OnLoad() descarga los archivos externos para las sucesivas páginas.
EJEMPLO POST-ONLOAD
INTERNO / EXTERNO DINÁMICAMENTE
Ejemplo de Post-onload. http://stevesouders.com/hpws/post-onload.php Ejemplo de  Dynamic Inlining . http://stevesouders.com/hpws/dynamic-inlining.php
Regla 9: Reducir búsquedas DNS
TTLs & DNS CACHING Cada petición DNS del navegador tarda entre 20-120 ms. ,[object Object],[object Object],[object Object],[object Object]
[object Object]
[object Object],DnsCacheTimeout: 30 minutes KeepAliveTimeout: 1 minute ServerInfoTimeOut: 2 minutes ,[object Object],network.dnsCacheExpiration: 1 minute network.dnsCacheEntries: 20 network.http.keep-alive.timeout: 5 minutes
Reducir el número de hostnames incluidos en el site.
Regla 10: Minimizar JavaScripts y CSS
OFUSCACIÓN ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
OFUSCACIÓN ,[object Object],http://crockford.com/javascript/jsmin http://dojotoolkit.org/
Resultados: reglas 6 - 10
Regla 11: Evitar redirecciones
Redirects ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Redirects ,[object Object]
Usos y Alternativas de los Redirects ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Evitar Redirects ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Regla 12: Eliminar Scripts duplicados
Scripts Duplicados ,[object Object],[object Object],[object Object]
Scripts Duplicados ,[object Object],[object Object],[object Object]
Evitar Scripts Duplicados ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Regla 13: Configurar ETags
¿Qué es un ETag? ,[object Object],[object Object],[object Object],[object Object],[object Object]
¿Qué es un ETag? ,[object Object],[object Object],[object Object]
Problema de los ETag’s ,[object Object],[object Object],[object Object]
Reconfigurar los ETag’s o eliminarlos ,[object Object],[object Object],[object Object],[object Object],[object Object]
ETag’s en el mundo real
Regla 14: Hacer el Ajax Cacheable
Web 2.0 ,[object Object],[object Object],[object Object],[object Object]
Ajax ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Optimización de las peticiones Ajax ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
¿Preguntas?

More Related Content

What's hot

Taller de optimizacion de servidores web tipo LAMP
Taller de optimizacion de servidores web tipo LAMPTaller de optimizacion de servidores web tipo LAMP
Taller de optimizacion de servidores web tipo LAMPYannick Warnier
 
Proyecto Integrado Chef
Proyecto Integrado ChefProyecto Integrado Chef
Proyecto Integrado Chefjuanbeato4
 
Generación de web sites dinámicos usando php
Generación de web sites dinámicos usando phpGeneración de web sites dinámicos usando php
Generación de web sites dinámicos usando phpCarlos Cruz Rincon
 
Hacking uploaders
Hacking uploadersHacking uploaders
Hacking uploaderslinenoise
 
Introducción a herramientas de Roots (José Debuchy, WCBA 2017)
 Introducción a herramientas de Roots (José Debuchy, WCBA 2017) Introducción a herramientas de Roots (José Debuchy, WCBA 2017)
Introducción a herramientas de Roots (José Debuchy, WCBA 2017)wpargentina
 
Html5 - El futuro de la web
Html5 - El futuro de la webHtml5 - El futuro de la web
Html5 - El futuro de la webJoan Fernández
 
Sacándole el jugo a apache
Sacándole el jugo a apacheSacándole el jugo a apache
Sacándole el jugo a apacheJavier Aroche
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesDani Latorre
 
JBoss AS Cluster - Curso JBoss JB366 Día 4
JBoss AS Cluster - Curso JBoss JB366 Día 4  JBoss AS Cluster - Curso JBoss JB366 Día 4
JBoss AS Cluster - Curso JBoss JB366 Día 4 César Pajares
 
Apache: Servidor Web Seguro (HTTPS)
Apache: Servidor Web Seguro (HTTPS)Apache: Servidor Web Seguro (HTTPS)
Apache: Servidor Web Seguro (HTTPS)pablozacrosuarez
 
Webinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHPWebinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHPArsys
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jspdtbadboy0
 
Apache3 christiany victor
Apache3 christiany victorApache3 christiany victor
Apache3 christiany victorcrisbeme
 

What's hot (17)

Taller de optimizacion de servidores web tipo LAMP
Taller de optimizacion de servidores web tipo LAMPTaller de optimizacion de servidores web tipo LAMP
Taller de optimizacion de servidores web tipo LAMP
 
1212
12121212
1212
 
Proyecto Integrado Chef
Proyecto Integrado ChefProyecto Integrado Chef
Proyecto Integrado Chef
 
Webperf wordpress
Webperf wordpressWebperf wordpress
Webperf wordpress
 
Generación de web sites dinámicos usando php
Generación de web sites dinámicos usando phpGeneración de web sites dinámicos usando php
Generación de web sites dinámicos usando php
 
wp-cli
wp-cliwp-cli
wp-cli
 
Hacking uploaders
Hacking uploadersHacking uploaders
Hacking uploaders
 
Introducción a herramientas de Roots (José Debuchy, WCBA 2017)
 Introducción a herramientas de Roots (José Debuchy, WCBA 2017) Introducción a herramientas de Roots (José Debuchy, WCBA 2017)
Introducción a herramientas de Roots (José Debuchy, WCBA 2017)
 
Deploying Wordpress
Deploying WordpressDeploying Wordpress
Deploying Wordpress
 
Html5 - El futuro de la web
Html5 - El futuro de la webHtml5 - El futuro de la web
Html5 - El futuro de la web
 
Sacándole el jugo a apache
Sacándole el jugo a apacheSacándole el jugo a apache
Sacándole el jugo a apache
 
Un poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernesUn poco más allá con grails. PrimerViernes
Un poco más allá con grails. PrimerViernes
 
JBoss AS Cluster - Curso JBoss JB366 Día 4
JBoss AS Cluster - Curso JBoss JB366 Día 4  JBoss AS Cluster - Curso JBoss JB366 Día 4
JBoss AS Cluster - Curso JBoss JB366 Día 4
 
Apache: Servidor Web Seguro (HTTPS)
Apache: Servidor Web Seguro (HTTPS)Apache: Servidor Web Seguro (HTTPS)
Apache: Servidor Web Seguro (HTTPS)
 
Webinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHPWebinar - Radiografía actual del lenguaje PHP
Webinar - Radiografía actual del lenguaje PHP
 
Servlets y jsp
Servlets y jspServlets y jsp
Servlets y jsp
 
Apache3 christiany victor
Apache3 christiany victorApache3 christiany victor
Apache3 christiany victor
 

Viewers also liked (7)

Capybara
CapybaraCapybara
Capybara
 
Hudson
HudsonHudson
Hudson
 
Introduction to test programming
Introduction to test programmingIntroduction to test programming
Introduction to test programming
 
SCRUM
SCRUMSCRUM
SCRUM
 
Coaching
CoachingCoaching
Coaching
 
BDD
BDDBDD
BDD
 
Cucumber
CucumberCucumber
Cucumber
 

Similar to High performance Web Sites

C:\fakepath\optimizacion
C:\fakepath\optimizacionC:\fakepath\optimizacion
C:\fakepath\optimizacionGonzalo C.
 
0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasolucionesGeneXus
 
Puntos clave para optimizar Wordpress by Raiola Networks
Puntos clave para optimizar Wordpress by Raiola NetworksPuntos clave para optimizar Wordpress by Raiola Networks
Puntos clave para optimizar Wordpress by Raiola NetworksRaiola Networks
 
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Martin Siniawski
 
Front-end: Diseñar webs rápidas, flexibles y potentes
Front-end: Diseñar webs rápidas, flexibles y potentesFront-end: Diseñar webs rápidas, flexibles y potentes
Front-end: Diseñar webs rápidas, flexibles y potentesRomán Hernández
 
Charla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
Charla betabeers optimización y rendimiento en Wordpress - Marcos RamajoCharla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
Charla betabeers optimización y rendimiento en Wordpress - Marcos RamajoMarcos Ramajo
 
Presentación Congreso Internet del Mediterráneo
Presentación Congreso Internet del MediterráneoPresentación Congreso Internet del Mediterráneo
Presentación Congreso Internet del MediterráneoFernando Serer
 
Charla web performance optimization
Charla   web performance optimizationCharla   web performance optimization
Charla web performance optimizationEsteban Tundidor
 
Workshop "Técnicas de optimización web" en Webprendedor 2011
Workshop "Técnicas de optimización web" en Webprendedor 2011Workshop "Técnicas de optimización web" en Webprendedor 2011
Workshop "Técnicas de optimización web" en Webprendedor 2011Rodrigo Ayala
 
Aspnet40 Cache Extensibility
Aspnet40 Cache ExtensibilityAspnet40 Cache Extensibility
Aspnet40 Cache ExtensibilityChristian Strevel
 
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBFOptimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBFDarío BF
 
Marcos quesada caching_sf2
Marcos quesada caching_sf2Marcos quesada caching_sf2
Marcos quesada caching_sf2symfony_bcn
 
Aceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHPAceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHPJuan Belón Pérez
 
Aceleradores PHP Final - Programador PHP
Aceleradores PHP Final - Programador PHPAceleradores PHP Final - Programador PHP
Aceleradores PHP Final - Programador PHPJuan Belón Pérez
 
Aceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHPAceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHPJuan Belón Pérez
 

Similar to High performance Web Sites (20)

C:\fakepath\optimizacion
C:\fakepath\optimizacionC:\fakepath\optimizacion
C:\fakepath\optimizacion
 
0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones
 
Puntos clave para optimizar Wordpress by Raiola Networks
Puntos clave para optimizar Wordpress by Raiola NetworksPuntos clave para optimizar Wordpress by Raiola Networks
Puntos clave para optimizar Wordpress by Raiola Networks
 
Performance en Drupal 7
Performance en Drupal 7Performance en Drupal 7
Performance en Drupal 7
 
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
 
Front-end: Diseñar webs rápidas, flexibles y potentes
Front-end: Diseñar webs rápidas, flexibles y potentesFront-end: Diseñar webs rápidas, flexibles y potentes
Front-end: Diseñar webs rápidas, flexibles y potentes
 
ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3
 
Charla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
Charla betabeers optimización y rendimiento en Wordpress - Marcos RamajoCharla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
Charla betabeers optimización y rendimiento en Wordpress - Marcos Ramajo
 
Presentación Congreso Internet del Mediterráneo
Presentación Congreso Internet del MediterráneoPresentación Congreso Internet del Mediterráneo
Presentación Congreso Internet del Mediterráneo
 
Charla web performance optimization
Charla   web performance optimizationCharla   web performance optimization
Charla web performance optimization
 
Workshop "Técnicas de optimización web" en Webprendedor 2011
Workshop "Técnicas de optimización web" en Webprendedor 2011Workshop "Técnicas de optimización web" en Webprendedor 2011
Workshop "Técnicas de optimización web" en Webprendedor 2011
 
Aspnet40 Cache Extensibility
Aspnet40 Cache ExtensibilityAspnet40 Cache Extensibility
Aspnet40 Cache Extensibility
 
Servidor web
Servidor webServidor web
Servidor web
 
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBFOptimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
Optimiza WordPress y a correr - WordCamp Cantabria 2015 - @DarioBF
 
La Caché
La CachéLa Caché
La Caché
 
Html5 g@tv
Html5 g@tvHtml5 g@tv
Html5 g@tv
 
Marcos quesada caching_sf2
Marcos quesada caching_sf2Marcos quesada caching_sf2
Marcos quesada caching_sf2
 
Aceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHPAceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHP
 
Aceleradores PHP Final - Programador PHP
Aceleradores PHP Final - Programador PHPAceleradores PHP Final - Programador PHP
Aceleradores PHP Final - Programador PHP
 
Aceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHPAceleradores Php Final - Programador PHP
Aceleradores Php Final - Programador PHP
 

Recently uploaded

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 

Recently uploaded (13)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 

High performance Web Sites

Editor's Notes

  1. - Moviendo los scripts al final permite una renderización progresiva y consigue una mayor ejecución de la descarga paralela.
  2. - Moviendo los scripts al final permite una renderización progresiva y consigue una mayor ejecución de la descarga paralela.
  3. El mayor impacto en el tiempo de respuesta viene dado por el número de componentes. Cada componente genera una HTTP request (cuando la cache está vacía o incluso cuando no está completamente llena).
  4. - En lugar de dejar en las manos del usuario que tenga que modificar el atributo network.http.max-persistent-connections-per-server del cliente navegador, es mejor que los ingenieros utilicen alias DNS. - Un estudio hecho para Yahoo! Muestra que si se utilizan más de dos alias el rendimiento es peor.
  5. Una razón es pq el script puede utilizar document.write para modificar la página. Por esta razón el navegador se espera a que la página esté compuesta adecuadamente. También para garantizar que los scripts se ejecuten en el orden correcto. Solución: ponerlos al final de la página.
  6. - La primera vez que se evalúa la expresión CSS, el javascript establece la propiedad explícitamente. De esta manera aunque se haga scroll o se mueva el ratón no se vuelve a evaluar.
  7. Evita la evaluación de la CSS expression durante eventos que no están relacionados. Interner Explorer no soporta la propiedad CSS min-width. Esta solución arregla el ancho de la página en el evento onresize.
  8. Las llamadas internas pueden ser más rápidas para ciertos casos ya que el estilo interno hace un http request por 3 (html, css, javascript) del externo. Pero si se cachea el css/js externos, el html será mucho más ligero y no habrá tantas http request.
  9. A menos archivos mejor. Un solo archivo hace solo una http request pero la primera vez que entra el usuario se descargará mucha información. Categorizar el site y hacer un archivo para cada categoría.
  10. - Casos en los que la home va a ser la primera página de muchas visitas a otras páginas. - Mezcla la interna con la externa. - La interna para la home y al cargar la home descarga los externos para posteriores páginas.
  11. Si el navegador supiera si un componente está en caché o no podría tomar la decisión de incluirlo interno o externo. Si está en caché sería externo sino sería interno. Esto lo hace inicializando la cookie en el estilo anterior. En el doOnload.
  12. time-to-live (TTL) Mientras el navegador tenga en caché lo que busca no va a preguntar al SO. Si el SO no puede satisfacer la petición del navegador, mandará una petición al servidor ISP, y aquí es donde se puede producir el aumento de tiempos. Por desgracia, las ips cambian, asi que hay que establacer una tiempo periódico donde se vacíe esta caché.
  13. El servidor devuelve junto con el registro DNS solicitido un TTL para esa petición, para indicar al cliente el periodo que la petición debe estar en caché. El sistema operativo toma este valor, pero el cada navegador establece sus propios TTL. Además de esto la propiedad Keep-Alive del protocolo HTTP puede sobre escribir los valores tanto del servidor como del navegador. Debido al alto número de usuarios de estos sites, estas compañías han decido poner unos TTL bajos para que en caso de fallo se redirija rápidamente a un servidor dns alternativo.
  14. IE: -Keep-Alive viene dado por el protocolo HTTP 1.0 donde se incluyó para poder realizar conexiones persistentes. Se puede indicar en el navegador o en el servidor. Tecnicamente en HTTP 1.1 Connection: Keep-Alive no es necesario. -ServerInfoTimeOut: indica que incluso sin el keep-alive, si el usuario hace una petición del mismo dns cada 2 minutos (sin ningún fallo en la petición), no hara falta de volver a enviar una dns lookup, incluso si has estado realizando peticiones cada 2 minutos durante más de 30 minutos tampoco hará falta. Esto es peligroso, pq si alguien actualiza su ip y el usuario sigue haciendo peticiones cada 2 minutos no refrescará al nuevo DNS. Firefox: -Al poner que la cache expire en un minuto incrementará el número de peticiones dns. -Poniendo solo 20 entradas en la cache perjudicará a los usuarios que hagan muchas visitas.
  15. Si la caché está vacía en el cliente, tendrá tantas peticiones DNS como hostnames tenga la web que solicita. Reducir el número de hostnames aumenta el número de descargas paralelas. Reducir las peticiones DNS reduce el tiempo de respuesta pero aumentando el número de descargas paralelas incrementa el tiempo.
  16. Es la práctica de eliminar caracteres innecesarios del código. Eliminar comentarios, espacios, nuevas líneas,tabs,etc. Al eliminar caracteres el peso de la descarga se reduce y por tanto el tiempo de descarga también.
  17. Problemas: - Al ser más complejo es más sensible a que se produzcan errores. - A veces elimina simbolos del javascript que deben permanecer. - Al ser más complejo es difícil de hacerle un debug.
  18. JSMin utiliza minimización y el Dojo Compressor ofuscación. Lo mejor es combinar la técnica de Gzip de la regla 4 y la minimización. Aplicar minimización a CSS es más fácil ya que no suelen llevar tantos comentarios ni espacios.