1 / 23

Mejores Prácticas en ASP.NET y AJAX

Mejores Prácticas en ASP.NET y AJAX. Isabel Gómez. Jose Manuel Alarcón. Microsoft Development Advisor isabelg@microsoft.com. Krasis - campusMVP Director http ://www.jasoft.org. Agenda. Mejores Prácticas en ASP.NET Uso de Cache Usar Modelo Asíncrono Ahorro de Recursos

martha
Download Presentation

Mejores Prácticas en ASP.NET y AJAX

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MejoresPrácticas en ASP.NET y AJAX Isabel Gómez Jose Manuel Alarcón Microsoft Development Advisor isabelg@microsoft.com Krasis - campusMVP Director http://www.jasoft.org

  2. Agenda • Mejores Prácticas en ASP.NET • Uso de Cache • UsarModeloAsíncrono • Ahorro de Recursos • MejoresPrácticas en Ajax

  3. MejoresPrácticas en ASP.NET

  4. Mejores Prácticas en ASP.NET Caché de Información • Se trata de almacenar información usada con frecuencia y costosa de obtener para minimizar la carga de procesamiento. • Ventajas: mucho menos costoso y más rápido. • Objetivos: Rendimiento, escalabilidad y disponibilidad. • Tipos de caché: • De cliente • De servidor • Declarativa • Caché completa (páginas y controles) • Caché parcial • Por código

  5. Mejores Prácticas en ASP.NET Caché declarativa • Se trata de guardar en el servidor (generalmente) los resultados de procesar una determinada página o control de usuario. • Se emplea la directiva <%@ OutputCache %> en la parte superior de la página o control de usuario. • Páginas/controles completos: • VaryByParam: se hace caché en función de un parámetro de la URL. • VaryByHeader: se cachea en función de una cabecera del navegador. • VaryByControl: se hace caché del contenido de un control o controles. • VaryBycustom: el parámetro que hace variar la caché es arbitrario y definido por el programador. • Porciones de páginas: controles de usuario • VaryByControl: varía la caché en función de una propiedad del control. • OJO: Shared = True • PostCacheSubstitution

  6. Mejora del rendimiento con Caché declarativa

  7. Mejores Prácticas en ASP.NET Caché por Código • Se puede establecer caché en memoria sin asignarla a la salida de una página o control. • Para ello empleamos la clase System.Web.Caching.Cache • Se maneja de manera similar a una colección. • Permite definir duración absoluta, relativa o prorogada • Lo más interesante: prioridades y dependencias • Archivos • Otras claves de caché • Tiempo • Bases de datos SQL Server • Dependencias personalizadas

  8. Mejores Prácticas en ASP.NETUsar Modelo Asíncrono • HTTPHandlers Asíncronos • HTTPModules Asíncronos • Páginas Asíncronas

  9. Mejores Prácticas en ASP.NET Optimización de Recursos • Debug=false en web.config • Acceso a Datos • Paginacióninteligente (ObjectDataSource) • Connection Pooling • Optimizar el uso de objeto de Sesión • Viewstate (Deshabilitarsi no esnecesario)

  10. Mejores Prácticas en ASP.NET Uso Juicioso de Viewstate • ViewState • Conserva el estado de los controles de la página entre idas y venidas al servidor. • Se envía entre el cliente y el servidor y viceversa en cada Postback de la página. • Si tenemos muchos controles puede llegar a ser realmente grande. • CONSEJO: deshabilitar el ViewState en los controles que no lo necesiten. Ej: etiquetas, rejillas que se regeneran, etc… • TÉCNICA AVANZADA: almacenar el ViewState en el servidor: • Ventaja: No hay que moverlo por la Red • Inconveniente: puede ocupar mucha memoria si abusamos.

  11. Almacenamiento del ViewStateen el Servidor

  12. MejoresPrácticas en AJAX

  13. Mejores Prácticas en AJAXAJAX • Concepto • Beneficios: • Mejora de la experiencia de Usuario • Optimización en el uso del Ancho de Banda • RenderizaciónParcial • Llamadaligera a Servicios Web • Facilita la programación de código de cliente

  14. Mejores Prácticas en AJAXMicrosoft ASP.NET AJAX ASP.NET 2.0 Page Framework, Server Controls Application Services “Ajax” Service Proxies Web Services (ASMX or WCF) HTML markup, CSS, and Script ASP.NET Pages Microsoft Ajax Library ASP.NET 2.0 Ajax Extensions Componentes (Non-visual, Behaviours, controles) App Services Bridge Ajax-Enabled Server Controls Networking Layer Web Services Bridge Base Class Library Core Services Browser Compatibility Server Framework Client Framework

  15. Mejores Prácticas en AJAXASP.NET AJAX Toolkit y Futures • ASP.NET AJAX Toolkit • ASP.NET AJAX Futures ASP.NET AJAX Control Toolkit Components Visual Studio 2005 Templates ASP.NET AJAX Control Toolkit Base Classes (.NET & JavaScript) ASP.NET AJAX Server Extensions Components ASP.NET AJAX Library Framework ASP.NET 2.0

  16. “Ajaxificando”

  17. Mejores Prácticas en AJAXDEMO: Visor de Fotos <asp:UpdatePanel> <asp:UpdatePanel> <asp:UpdateProgress> Trigger

  18. Mejores Prácticas en AJAXOptimizando • Ficheros de script en Sistema de Ficheros • UpdatePanel con UpdateMode=Conditional • Debug=false • Ajax Patterns(http://ajaxpatterns.org) • IndiciosVisuales del cambio • NavegaciónLógica y URLs únicos

  19. Optimizandoel uso de Ajax

  20. Mejores Prácticas en ASP.NET y AJAXRecapitulación y Conclusiones • ASP.NET + AJAX: • Seguras • Escalables • Uso de Cache • ModeloAsíncrono • Ahorro de Recursos • Experiencia de usuario (AJAX)

  21. Referencias • ASP.NET • Seguridad: • Improving Web Application Security Threats and Countermeasures • An Introductory Guide to Building and Deploying More Secure Sites with ASP.NET and IIS • An Introductory Guide to Building and Deploying More Secure Sites with ASP.NET and IIS, Part 2 • Rendimiento: • 10 Tips for Writing High-Performance Web Applications • Asynchronous Pages in ASP.NET 2.0 • Power Programming Tips for ASP.NET 2.0 • Developing High-Performance ASP.NET Applications • State Management Recommendations

  22. Referencias • AJAX • http://AJAX.asp.net/ • http://forums.asp.net/default.aspx?GroupID=34 • Blogs http://www.jasoft.org – José Manuel Alarcón http://smarx.com – Steve Marx http://nikhilk.net – Nikhil Kothari http://weblogs.asp.net/scottgu – Scott Guthrie • Patterns: http://ajaxpatterns.org

More Related