SlideShare une entreprise Scribd logo
1  sur  26
Técnicas Ninja!Optimización Web +ASP.NET AJAX Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl
Microsoft Confidential Sabia que? «En la mayoría de las paginas web, menos del 10 - 20% del tiempo de carga de una pagina , corresponde a la descarga del documento html, existe entonces un 80-90% que podemos intentar reducir» - Steve Souders
Agenda NecesidadOptimización Optimización - Compromiso del Team Optimización Web Optimizacion ASP.NET AJAX DEMOS
Proceso Necesidad de Optimización Proceso mayormente reactivo Aplicaciones testeadas en escenarios irreales: WebServer sin peticiones concurrentes. Pruebas a nivel local Desarrollos contra el tiempo. Front-End vs BackEnd Microsoft Confidential
Procesamiento excesivo de Javascript Tamaño de Imágenes no apropiadas Tamaño de archivos JS descomunales RoundTrips innecesarios Http Request evitables  Microsoft Confidential Proceso Necesidad de OptimizaciónResultados del analisis Web lentas = Usuarios Enojados + (-Visitas)
Optimización  - compromiso del Team Actividad Proactiva del equipo Analizar para buscar puntos de optimización de la UI (Front-end) como JS, HTML, HTTP Resquest, AJAX , Posición de los Script, compresión, etc. Desarrollando para el peor escenario: Clientes con escasa capacidad de procesamiento. Ancho de banda limitado. Considerar todo recurso escaso. Microsoft Confidential
Tips de Optimización Excelente Libro High Performance Web Sites Steve Souder ,[object Object]
Guía indispensable  para desarrolladores Web.
Revisaremos algunos de estas reglas a continuación:Microsoft Confidential
Realizar menos peticiones HTTP Utilizando CSS Sprites Reducción de Tiempos hasta en ~50% Evita hacer peticiones HTTP por cada imagen Especial para menús. Combinando Scripts En la medida de lo posible hacer mix de CSS y JS Balancear entre modularidad y performance. Optimización hasta un ~30%
Content Delevery Network Garantizan velocidad y disponibilidad Envío de Script comprimidos desde el servidor (si el nuestro no lo tiene activado) Existe un Límite de peticiones HTTP concurrentes al mismo Sitio. CDN de Microsoft, Google ,EdgeCast, etc.
-CSS Sprites Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
Utilizar Gzip (1/2) Reducir el tamaño del HTTP Response Gzip Vs Deflate – GzipWin! +Popular Alto impacto en la performance Algunos sitios solo comprimen HTML Comprimir HTML, JS, CSS Microsoft Confidential
Utilizar Gzip(1/2) No comprimir PDF, JPG (Gasto de recursos innecesarios, se agrega info al archivo y queda más grande!) Costo de CPU, determinar tamaño mínimo de compresión. Activarlo a Nivel de Hosting TablaComparativaWebSite con Gzip
JS Abajo … Scripts pueden retrasan el renderizado de la página Los script bloquean la descarga en paralelo. Mediciones indican que el peor caso es arriba, el mejor.. abajo VS ABAJO ARRIBA
Crear los JavaScript y CSS en Archivos Dentro de la página o fuera de la página? Descarga paralela hace que el sitio se descargue más rápido. El cache ayuda para la siguiente carga (aunque cambie el contenido html) Se debe llegar a un equilibrio con los otros puntos de optimización. Microsoft Confidential
- JavaScript  al final Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
Minificar Archivos Javascript No es compresión, es minificación! Efectos a nivel de código, imperceptibles Buena práctica Comprimir  + Minimizar  Microsoft Ajax Minifierhttp://closure-compiler.appspot.com/home Microsoft Confidential
- Microsoft Ajax Minifier Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
El turno de ASP.NET  Ser muy cuidados con: ViewState ,preguntarse ¿Necesito guardar todos los estados? No guardar dataset en el viewstate! ViewstateMode de ASP.NET 4.0 permite de manera efectiva, controlar la generación de contenido al viewstate. Ver Blog (Buscar ViewstateMode) Setea siempre en producción Debug=False Elimina nombres largos de páginas páginas maestras (contentTemplate) Habilitar la compresion a nivel de Web.config
ASP.NET AJAX…	 Abuso de UpdatePanel Poca o nula configuración a Nivel de ScriptManager Minimizar las llamadas Asíncronas «Ajaxifico> luego existo… Existen configuraciones que nos ayudan a cumplir las reglas anteriores. Microsoft Confidential
A Nivel de ScriptManager (1/2)ScriptReferenceProfiler + CompositeScript Primero determinar los script que generó el ScritpManager en tiempo de ejecución con CompositeScript Luego agregar al Scriptmanager
ScriptMode, en release, esto evita se levanten procesos internos de debug y traza, demorando la ejecución del código generado. EnablePartialRerendering = false, si es que no hay UpdatePanel en la página, esto evita que cargue innecesariamente MicrosoftAjaxWebForm.js LoadScriptBeforeUI, genera los Script luego del tagBody Microsoft Confidential A Nivel de ScriptManager (2/2)
Remplazo por ToolkitScriptManager Hereda de ScriptManager Parte de Ajax Control Toolkit Permite realizar combinado de Script  Permite la utilización de AJAX CDN Fácil reemplazo para el actual ScriptManager ganando rendimiento Microsoft Confidential
Optimizaciones: ScriptmanagerToolkitScriptManager Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
A nivel de Web.ConfigHabilitar compresion y Cache para ASP.NET AJAX   <system.web.extensions> <scripting>      <scriptResourceHandlerenableCompression="true"enableCaching="true"/> </scripting> </system.web.extensions>

Contenu connexe

Tendances

Como hacer sus sitios web más usables con Internet Explorer 9 y 10
Como hacer sus sitios web más usables con Internet Explorer 9 y 10Como hacer sus sitios web más usables con Internet Explorer 9 y 10
Como hacer sus sitios web más usables con Internet Explorer 9 y 10
Juan Carlos Ruiz Pacheco
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Jordi Llonch
 

Tendances (19)

WPO y mejora de la velocidad de carga de 4 webs en WordPress - PROmarketingDAY
WPO  y mejora de la velocidad de carga de 4 webs en WordPress - PROmarketingDAYWPO  y mejora de la velocidad de carga de 4 webs en WordPress - PROmarketingDAY
WPO y mejora de la velocidad de carga de 4 webs en WordPress - PROmarketingDAY
 
Flujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontendFlujos de trabajo para un desarrollador web frontend
Flujos de trabajo para un desarrollador web frontend
 
HTML Article Configurar Wordpress Android (14)
HTML Article   Configurar Wordpress Android (14)HTML Article   Configurar Wordpress Android (14)
HTML Article Configurar Wordpress Android (14)
 
Ataque masivo a WordPress con ILLOWP
Ataque masivo a WordPress con ILLOWPAtaque masivo a WordPress con ILLOWP
Ataque masivo a WordPress con ILLOWP
 
Como hacer sus sitios web más usables con Internet Explorer 9 y 10
Como hacer sus sitios web más usables con Internet Explorer 9 y 10Como hacer sus sitios web más usables con Internet Explorer 9 y 10
Como hacer sus sitios web más usables con Internet Explorer 9 y 10
 
WordPress WPO: Consejos y Herramientas (Federico Álvarez - Meetup Bs. As. Oct...
WordPress WPO: Consejos y Herramientas (Federico Álvarez - Meetup Bs. As. Oct...WordPress WPO: Consejos y Herramientas (Federico Álvarez - Meetup Bs. As. Oct...
WordPress WPO: Consejos y Herramientas (Federico Álvarez - Meetup Bs. As. Oct...
 
WPO - Murcia Meetup Day #MMD17
WPO - Murcia Meetup Day #MMD17WPO - Murcia Meetup Day #MMD17
WPO - Murcia Meetup Day #MMD17
 
Cómo convertí mi trabajo freelance en un negocio (Mercedes Bugarin - Meetup...
Cómo convertí mi trabajo freelance en un negocio (Mercedes Bugarin - Meetup...Cómo convertí mi trabajo freelance en un negocio (Mercedes Bugarin - Meetup...
Cómo convertí mi trabajo freelance en un negocio (Mercedes Bugarin - Meetup...
 
Web Performance Best Practices
Web Performance Best PracticesWeb Performance Best Practices
Web Performance Best Practices
 
Cómo aprender php
Cómo aprender phpCómo aprender php
Cómo aprender php
 
Aplicar SEO a un desarrollo WordPress [Stephen De Winter - @estudiodos]
Aplicar SEO a un desarrollo WordPress [Stephen De Winter - @estudiodos]Aplicar SEO a un desarrollo WordPress [Stephen De Winter - @estudiodos]
Aplicar SEO a un desarrollo WordPress [Stephen De Winter - @estudiodos]
 
Mejora el rendimiento de tu WordPress [Javier Casares - @JavierCasares]
Mejora el rendimiento de tu WordPress [Javier Casares - @JavierCasares]Mejora el rendimiento de tu WordPress [Javier Casares - @JavierCasares]
Mejora el rendimiento de tu WordPress [Javier Casares - @JavierCasares]
 
Blinda tu word press contra hackers
Blinda tu word press contra hackersBlinda tu word press contra hackers
Blinda tu word press contra hackers
 
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
 
Programacion web jee semana8 jdeveloper-grabardatos
Programacion web jee   semana8 jdeveloper-grabardatosProgramacion web jee   semana8 jdeveloper-grabardatos
Programacion web jee semana8 jdeveloper-grabardatos
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - SpanishDeSymfonyDay 2014 - To mock or not to mock - Spanish
DeSymfonyDay 2014 - To mock or not to mock - Spanish
 
Ovnicom y VEEAM | Cloud Provider de BaaS y DRaaS Empresarial
Ovnicom y VEEAM | Cloud Provider de BaaS y DRaaS EmpresarialOvnicom y VEEAM | Cloud Provider de BaaS y DRaaS Empresarial
Ovnicom y VEEAM | Cloud Provider de BaaS y DRaaS Empresarial
 
Sácale todo el provecho a Stylus el mejor pre procesador de CSS
Sácale todo el provecho a Stylus el mejor pre procesador de CSSSácale todo el provecho a Stylus el mejor pre procesador de CSS
Sácale todo el provecho a Stylus el mejor pre procesador de CSS
 
Como mejorar-la-velocidad-de-tu-wordpress
Como mejorar-la-velocidad-de-tu-wordpressComo mejorar-la-velocidad-de-tu-wordpress
Como mejorar-la-velocidad-de-tu-wordpress
 

En vedette

Money Money Home
Money Money HomeMoney Money Home
Money Money Home
Ah Hooi
 
352. como hacer gente excelente
352. como hacer gente excelente352. como hacer gente excelente
352. como hacer gente excelente
dec-admin3
 
Proyecto ciudadano guia pedagogica
Proyecto ciudadano   guia pedagogicaProyecto ciudadano   guia pedagogica
Proyecto ciudadano guia pedagogica
Karlita-al
 
Optimización de Empresas
Optimización de EmpresasOptimización de Empresas
Optimización de Empresas
citla10
 
FORMANDO CIUDADANOS DESDE LOS VALORES
FORMANDO CIUDADANOS DESDE LOS VALORESFORMANDO CIUDADANOS DESDE LOS VALORES
FORMANDO CIUDADANOS DESDE LOS VALORES
Kritoo Muñoz
 
Innovate Corporativo v4
Innovate Corporativo v4Innovate Corporativo v4
Innovate Corporativo v4
Miriam Blanco
 
Ergonomia enfoques
Ergonomia enfoquesErgonomia enfoques
Ergonomia enfoques
Zulay Porras
 

En vedette (20)

Money Money Home
Money Money HomeMoney Money Home
Money Money Home
 
Movilizate
MovilizateMovilizate
Movilizate
 
Misión
MisiónMisión
Misión
 
Activate Ciudadano Presentacion
Activate Ciudadano PresentacionActivate Ciudadano Presentacion
Activate Ciudadano Presentacion
 
352. como hacer gente excelente
352. como hacer gente excelente352. como hacer gente excelente
352. como hacer gente excelente
 
Que Es La Optimizacion
Que Es La OptimizacionQue Es La Optimizacion
Que Es La Optimizacion
 
Campaña si yo fuera el ciudadano 1 - 2015
Campaña si yo fuera el ciudadano 1 - 2015Campaña si yo fuera el ciudadano 1 - 2015
Campaña si yo fuera el ciudadano 1 - 2015
 
Proyecto ciudadano guia pedagogica
Proyecto ciudadano   guia pedagogicaProyecto ciudadano   guia pedagogica
Proyecto ciudadano guia pedagogica
 
Optimización de Empresas
Optimización de EmpresasOptimización de Empresas
Optimización de Empresas
 
FORMACIÓN EN COMPETENCIAS Y HABILIDADES PROFESIONALES. MOTIVACIÓN Y OPTIMIZAC...
FORMACIÓN EN COMPETENCIAS Y HABILIDADES PROFESIONALES. MOTIVACIÓN Y OPTIMIZAC...FORMACIÓN EN COMPETENCIAS Y HABILIDADES PROFESIONALES. MOTIVACIÓN Y OPTIMIZAC...
FORMACIÓN EN COMPETENCIAS Y HABILIDADES PROFESIONALES. MOTIVACIÓN Y OPTIMIZAC...
 
FORMANDO CIUDADANOS DESDE LOS VALORES
FORMANDO CIUDADANOS DESDE LOS VALORESFORMANDO CIUDADANOS DESDE LOS VALORES
FORMANDO CIUDADANOS DESDE LOS VALORES
 
Innovate Corporativo v4
Innovate Corporativo v4Innovate Corporativo v4
Innovate Corporativo v4
 
Mision vision
Mision visionMision vision
Mision vision
 
Cambiar el chip
Cambiar el chipCambiar el chip
Cambiar el chip
 
La Ergonomia en las oficinas
 La Ergonomia en las oficinas La Ergonomia en las oficinas
La Ergonomia en las oficinas
 
Atencion cliente municipalidad
Atencion cliente municipalidadAtencion cliente municipalidad
Atencion cliente municipalidad
 
Ergonomia sector salud
Ergonomia sector saludErgonomia sector salud
Ergonomia sector salud
 
5 ergonomia pdf
5 ergonomia pdf5 ergonomia pdf
5 ergonomia pdf
 
Trabajo De ErgonomíA
Trabajo De ErgonomíATrabajo De ErgonomíA
Trabajo De ErgonomíA
 
Ergonomia enfoques
Ergonomia enfoquesErgonomia enfoques
Ergonomia enfoques
 

Similaire à C:\fakepath\optimizacion

0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones
GeneXus
 
Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011
Dani Latorre
 

Similaire à C:\fakepath\optimizacion (20)

High performance Web Sites
High performance Web SitesHigh performance Web Sites
High performance Web Sites
 
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?
 
Analisis Del Dominio Nestle
Analisis Del Dominio NestleAnalisis Del Dominio Nestle
Analisis Del Dominio Nestle
 
0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones0094 rodrigo zubeldía alphasoluciones
0094 rodrigo zubeldía alphasoluciones
 
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
 
Un sitio superrápido con joomla!
Un sitio superrápido con joomla!Un sitio superrápido con joomla!
Un sitio superrápido con joomla!
 
Asp .Net Ajax: Patrones
Asp .Net Ajax: PatronesAsp .Net Ajax: Patrones
Asp .Net Ajax: Patrones
 
Optimizar performance sin morir en el intento
Optimizar performance sin morir en el intentoOptimizar performance sin morir en el intento
Optimizar performance sin morir en el intento
 
Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011Optimiza tus webs Grails. Greach 2011
Optimiza tus webs Grails. Greach 2011
 
Performance
Performance Performance
Performance
 
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
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007
 
S2-PD2.pptx
S2-PD2.pptxS2-PD2.pptx
S2-PD2.pptx
 
S2-PD2.pptx
S2-PD2.pptxS2-PD2.pptx
S2-PD2.pptx
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007
 
Desarrollo en la nube
Desarrollo en la nubeDesarrollo en la nube
Desarrollo en la nube
 
WPO para bloggers de viaje: mejora el tiempo de carga de tu blog
WPO para bloggers de viaje: mejora el tiempo de carga de tu blogWPO para bloggers de viaje: mejora el tiempo de carga de tu blog
WPO para bloggers de viaje: mejora el tiempo de carga de tu blog
 
El tamaño importa - JoomlaDay Sevilla 2015
El tamaño importa - JoomlaDay Sevilla 2015El tamaño importa - JoomlaDay Sevilla 2015
El tamaño importa - JoomlaDay Sevilla 2015
 
Asp
AspAsp
Asp
 
Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NET
 

Plus de Gonzalo C.

Aspnetwebapi mongo
Aspnetwebapi mongoAspnetwebapi mongo
Aspnetwebapi mongo
Gonzalo C.
 
Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5 Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5
Gonzalo C.
 
Web matrix y j querymobile
Web matrix y j querymobileWeb matrix y j querymobile
Web matrix y j querymobile
Gonzalo C.
 
Web matrix session4
Web matrix session4Web matrix session4
Web matrix session4
Gonzalo C.
 
Web matrix session 3
Web matrix session 3Web matrix session 3
Web matrix session 3
Gonzalo C.
 
Ppt workshop ie9
Ppt workshop ie9Ppt workshop ie9
Ppt workshop ie9
Gonzalo C.
 
Web matrix razor_aspnetmvc_finalv2_techdays2010
Web matrix razor_aspnetmvc_finalv2_techdays2010Web matrix razor_aspnetmvc_finalv2_techdays2010
Web matrix razor_aspnetmvc_finalv2_techdays2010
Gonzalo C.
 
Asp.Net 4.0 Roadmap
Asp.Net 4.0 RoadmapAsp.Net 4.0 Roadmap
Asp.Net 4.0 Roadmap
Gonzalo C.
 
Aspnet Futures Msdn
Aspnet Futures MsdnAspnet Futures Msdn
Aspnet Futures Msdn
Gonzalo C.
 

Plus de Gonzalo C. (19)

Charla ie
Charla ieCharla ie
Charla ie
 
Tips aspnet
Tips aspnetTips aspnet
Tips aspnet
 
Aspnetwebapi mongo
Aspnetwebapi mongoAspnetwebapi mongo
Aspnetwebapi mongo
 
1032513010
10325130101032513010
1032513010
 
Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5 Desarrollo de aplicaciones con HTML5
Desarrollo de aplicaciones con HTML5
 
Aplicaciones en HTML 5: Los pilares de una Nueva Web
Aplicaciones en HTML 5: Los pilares de una Nueva WebAplicaciones en HTML 5: Los pilares de una Nueva Web
Aplicaciones en HTML 5: Los pilares de una Nueva Web
 
Web matrix 2_desarrollo_web_gratis_simple_abierto_todo_en_uno
Web matrix 2_desarrollo_web_gratis_simple_abierto_todo_en_unoWeb matrix 2_desarrollo_web_gratis_simple_abierto_todo_en_uno
Web matrix 2_desarrollo_web_gratis_simple_abierto_todo_en_uno
 
Asp.net html5
Asp.net html5Asp.net html5
Asp.net html5
 
Web matrix y j querymobile
Web matrix y j querymobileWeb matrix y j querymobile
Web matrix y j querymobile
 
Web matrix session5
Web matrix session5Web matrix session5
Web matrix session5
 
Web matrix session4
Web matrix session4Web matrix session4
Web matrix session4
 
Web matrix session 3
Web matrix session 3Web matrix session 3
Web matrix session 3
 
Web matrix session2
Web matrix session2Web matrix session2
Web matrix session2
 
Web matrix session1
Web matrix session1Web matrix session1
Web matrix session1
 
Ppt workshop ie9
Ppt workshop ie9Ppt workshop ie9
Ppt workshop ie9
 
Web matrix razor_aspnetmvc_finalv2_techdays2010
Web matrix razor_aspnetmvc_finalv2_techdays2010Web matrix razor_aspnetmvc_finalv2_techdays2010
Web matrix razor_aspnetmvc_finalv2_techdays2010
 
Máxima potencia en el desarrollo de sitios web
Máxima potencia en el desarrollo de sitios webMáxima potencia en el desarrollo de sitios web
Máxima potencia en el desarrollo de sitios web
 
Asp.Net 4.0 Roadmap
Asp.Net 4.0 RoadmapAsp.Net 4.0 Roadmap
Asp.Net 4.0 Roadmap
 
Aspnet Futures Msdn
Aspnet Futures MsdnAspnet Futures Msdn
Aspnet Futures Msdn
 

Dernier

🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 

Dernier (20)

🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptxAEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
AEC2. Egipto Antiguo. Adivina, Adivinanza.pptx
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docx
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docxUNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
UNIDAD DIDACTICA nivel inicial EL SUPERMERCADO.docx
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
UNIDAD DE APRENDIZAJE DE PRIMER GRADO DEL MES DE MAYO PARA TRABAJAR CON ESTUD...
 

C:\fakepath\optimizacion

  • 1. Técnicas Ninja!Optimización Web +ASP.NET AJAX Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl
  • 2. Microsoft Confidential Sabia que? «En la mayoría de las paginas web, menos del 10 - 20% del tiempo de carga de una pagina , corresponde a la descarga del documento html, existe entonces un 80-90% que podemos intentar reducir» - Steve Souders
  • 3. Agenda NecesidadOptimización Optimización - Compromiso del Team Optimización Web Optimizacion ASP.NET AJAX DEMOS
  • 4. Proceso Necesidad de Optimización Proceso mayormente reactivo Aplicaciones testeadas en escenarios irreales: WebServer sin peticiones concurrentes. Pruebas a nivel local Desarrollos contra el tiempo. Front-End vs BackEnd Microsoft Confidential
  • 5. Procesamiento excesivo de Javascript Tamaño de Imágenes no apropiadas Tamaño de archivos JS descomunales RoundTrips innecesarios Http Request evitables Microsoft Confidential Proceso Necesidad de OptimizaciónResultados del analisis Web lentas = Usuarios Enojados + (-Visitas)
  • 6. Optimización - compromiso del Team Actividad Proactiva del equipo Analizar para buscar puntos de optimización de la UI (Front-end) como JS, HTML, HTTP Resquest, AJAX , Posición de los Script, compresión, etc. Desarrollando para el peor escenario: Clientes con escasa capacidad de procesamiento. Ancho de banda limitado. Considerar todo recurso escaso. Microsoft Confidential
  • 7.
  • 8. Guía indispensable para desarrolladores Web.
  • 9. Revisaremos algunos de estas reglas a continuación:Microsoft Confidential
  • 10. Realizar menos peticiones HTTP Utilizando CSS Sprites Reducción de Tiempos hasta en ~50% Evita hacer peticiones HTTP por cada imagen Especial para menús. Combinando Scripts En la medida de lo posible hacer mix de CSS y JS Balancear entre modularidad y performance. Optimización hasta un ~30%
  • 11. Content Delevery Network Garantizan velocidad y disponibilidad Envío de Script comprimidos desde el servidor (si el nuestro no lo tiene activado) Existe un Límite de peticiones HTTP concurrentes al mismo Sitio. CDN de Microsoft, Google ,EdgeCast, etc.
  • 12. -CSS Sprites Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
  • 13. Utilizar Gzip (1/2) Reducir el tamaño del HTTP Response Gzip Vs Deflate – GzipWin! +Popular Alto impacto en la performance Algunos sitios solo comprimen HTML Comprimir HTML, JS, CSS Microsoft Confidential
  • 14. Utilizar Gzip(1/2) No comprimir PDF, JPG (Gasto de recursos innecesarios, se agrega info al archivo y queda más grande!) Costo de CPU, determinar tamaño mínimo de compresión. Activarlo a Nivel de Hosting TablaComparativaWebSite con Gzip
  • 15. JS Abajo … Scripts pueden retrasan el renderizado de la página Los script bloquean la descarga en paralelo. Mediciones indican que el peor caso es arriba, el mejor.. abajo VS ABAJO ARRIBA
  • 16. Crear los JavaScript y CSS en Archivos Dentro de la página o fuera de la página? Descarga paralela hace que el sitio se descargue más rápido. El cache ayuda para la siguiente carga (aunque cambie el contenido html) Se debe llegar a un equilibrio con los otros puntos de optimización. Microsoft Confidential
  • 17. - JavaScript al final Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
  • 18. Minificar Archivos Javascript No es compresión, es minificación! Efectos a nivel de código, imperceptibles Buena práctica Comprimir + Minimizar Microsoft Ajax Minifierhttp://closure-compiler.appspot.com/home Microsoft Confidential
  • 19. - Microsoft Ajax Minifier Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
  • 20. El turno de ASP.NET Ser muy cuidados con: ViewState ,preguntarse ¿Necesito guardar todos los estados? No guardar dataset en el viewstate! ViewstateMode de ASP.NET 4.0 permite de manera efectiva, controlar la generación de contenido al viewstate. Ver Blog (Buscar ViewstateMode) Setea siempre en producción Debug=False Elimina nombres largos de páginas páginas maestras (contentTemplate) Habilitar la compresion a nivel de Web.config
  • 21. ASP.NET AJAX… Abuso de UpdatePanel Poca o nula configuración a Nivel de ScriptManager Minimizar las llamadas Asíncronas «Ajaxifico> luego existo… Existen configuraciones que nos ayudan a cumplir las reglas anteriores. Microsoft Confidential
  • 22. A Nivel de ScriptManager (1/2)ScriptReferenceProfiler + CompositeScript Primero determinar los script que generó el ScritpManager en tiempo de ejecución con CompositeScript Luego agregar al Scriptmanager
  • 23. ScriptMode, en release, esto evita se levanten procesos internos de debug y traza, demorando la ejecución del código generado. EnablePartialRerendering = false, si es que no hay UpdatePanel en la página, esto evita que cargue innecesariamente MicrosoftAjaxWebForm.js LoadScriptBeforeUI, genera los Script luego del tagBody Microsoft Confidential A Nivel de ScriptManager (2/2)
  • 24. Remplazo por ToolkitScriptManager Hereda de ScriptManager Parte de Ajax Control Toolkit Permite realizar combinado de Script Permite la utilización de AJAX CDN Fácil reemplazo para el actual ScriptManager ganando rendimiento Microsoft Confidential
  • 25. Optimizaciones: ScriptmanagerToolkitScriptManager Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
  • 26. A nivel de Web.ConfigHabilitar compresion y Cache para ASP.NET AJAX <system.web.extensions> <scripting> <scriptResourceHandlerenableCompression="true"enableCaching="true"/> </scripting> </system.web.extensions>
  • 27. Habilitar Compresión & Caché Gonzalo Pérez C. MVP ASP/ASP.NET http://www.chalalo.cl demo
  • 28. Saludos, desde el epicentro del terremoto y maremoto en Chile. !Fuerza Concepción!!Fuerza Dichato!!Fuerza Talcahuano! Gonzalo “Chalalo” Pérez C. ASP/ASP.NET http://www.chalalo.cl