La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Mejores Prácticas en ASP.NET y AJAX Isabel Gómez Microsoft Development Advisor Jose Manuel Alarcón Krasis - campusMVP Directorhttp://www.jasoft.org.

Presentaciones similares


Presentación del tema: "Mejores Prácticas en ASP.NET y AJAX Isabel Gómez Microsoft Development Advisor Jose Manuel Alarcón Krasis - campusMVP Directorhttp://www.jasoft.org."— Transcripción de la presentación:

1 Mejores Prácticas en ASP.NET y AJAX Isabel Gómez Microsoft Development Advisor Jose Manuel Alarcón Krasis - campusMVP Directorhttp://www.jasoft.org

2 Mejores Prácticas en ASP.NETMejores Prácticas en ASP.NET –Uso de Cache –Usar Modelo Asíncrono –Ahorro de Recursos Mejores Prácticas en AjaxMejores Prácticas en Ajax

3 Mejores Prácticas en ASP.NET

4 Se trata de almacenar información usada con frecuencia y costosa de obtener para minimizar la carga de procesamiento. 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. Ventajas: mucho menos costoso y más rápido. Objetivos: Rendimiento, escalabilidad y disponibilidad. Objetivos: Rendimiento, escalabilidad y disponibilidad. Tipos de caché: Tipos de caché: De cliente De cliente De servidor De servidor Declarativa Declarativa Caché completa (páginas y controles) Caché completa (páginas y controles) Caché parcial Caché parcial Por código Por código

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

6 Mejora del rendimiento con Caché declarativa

7 Se puede establecer caché en memoria sin asignarla a la salida de una página o control. 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 Para ello empleamos la clase System.Web.Caching.Cache Se maneja de manera similar a una colección. Se maneja de manera similar a una colección. Permite definir duración absoluta, relativa o prorogada Permite definir duración absoluta, relativa o prorogada Lo más interesante: prioridades y dependencias Lo más interesante: prioridades y dependencias Archivos Archivos Otras claves de caché Otras claves de caché Tiempo Tiempo Bases de datos SQL Server Bases de datos SQL Server Dependencias personalizadas Dependencias personalizadas

8 HTTPHandlers AsíncronosHTTPHandlers Asíncronos HTTPModules AsíncronosHTTPModules Asíncronos Páginas AsíncronasPáginas Asíncronas

9 Debug=false en web.configDebug=false en web.config Acceso a DatosAcceso a Datos –Paginación inteligente (ObjectDataSource) –Connection Pooling Optimizar el uso de objeto de SesiónOptimizar el uso de objeto de Sesión Viewstate (Deshabilitar si no es necesario)Viewstate (Deshabilitar si no es necesario)

10 ViewState ViewState Conserva el estado de los controles de la página entre idas y venidas al servidor. 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. 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. 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… 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: TÉCNICA AVANZADA: almacenar el ViewState en el servidor: Ventaja: No hay que moverlo por la Red Ventaja: No hay que moverlo por la Red Inconveniente: puede ocupar mucha memoria si abusamos. Inconveniente: puede ocupar mucha memoria si abusamos.

11 Almacenamiento del ViewState en el Servidor

12 Mejores Prácticas en AJAX

13 ConceptoConcepto Beneficios:Beneficios: –Mejora de la experiencia de Usuario –Optimización en el uso del Ancho de Banda Renderización ParcialRenderización Parcial Llamada ligera a Servicios WebLlamada ligera a Servicios Web –Facilita la programación de código de cliente

14 ASP.NET 2.0 Ajax Extensions Ajax-Enabled Server Controls Ajax-Enabled Server Controls App Services Bridge Web Services Bridge Server Framework ASP.NET 2.0 Application Services Page Framework, Server Controls Page Framework, Server Controls ASP.NET Pages Web Services (ASMX or WCF) Web Services (ASMX or WCF) Client Framework HTML markup, CSS, and Script HTML markup, CSS, and Script AjaxServiceProxiesAjaxServiceProxies Microsoft Ajax Library Core Services Base Class Library Componentes (Non-visual, Behaviours, controles) Componentes (Non-visual, Behaviours, controles) Browser Compatibility Networking Layer

15 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 ASP.NET AJAX ToolkitASP.NET AJAX Toolkit ASP.NET AJAX FuturesASP.NET AJAX Futures

16 Ajaxificando

17 Trigger

18 Ficheros de script en Sistema de FicherosFicheros de script en Sistema de Ficheros UpdatePanel con UpdateMode=ConditionalUpdatePanel con UpdateMode=Conditional Debug=falseDebug=false Ajax Patterns( Patterns( –Indicios Visuales del cambio –Navegación Lógica y URLs únicos

19 Optimizando el uso de Ajax

20 ASP.NET + AJAX:ASP.NET + AJAX: –Seguras –Escalables Uso de CacheUso de Cache Modelo AsíncronoModelo Asíncrono Ahorro de RecursosAhorro de Recursos –Experiencia de usuario (AJAX)

21 ASP.NETASP.NET –Seguridad: –Improving Web Application Security Threats and Countermeasures Improving Web Application Security Threats and CountermeasuresImproving 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 IISAn 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 An Introductory Guide to Building and Deploying More Secure Sites with ASP.NET and IIS, Part 2An 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 10 Tips for Writing High-Performance Web Applications10 Tips for Writing High-Performance Web Applications –Asynchronous Pages in ASP.NET 2.0 Asynchronous Pages in ASP.NET 2.0Asynchronous Pages in ASP.NET 2.0 –Power Programming Tips for ASP.NET 2.0 Power Programming Tips for ASP.NET 2.0Power Programming Tips for ASP.NET 2.0 –Developing High-Performance ASP.NET Applications Developing High-Performance ASP.NET ApplicationsDeveloping High-Performance ASP.NET Applications –State Management Recommendations State Management RecommendationsState Management Recommendations

22 AJAXAJAX –http://AJAX.asp.net/ –http://forums.asp.net/default.aspx?GroupID=34 –Blogs – José Manuel Alarcón – Steve Marx – Nikhil Kothari – Scott Guthrie –Patterns :

23


Descargar ppt "Mejores Prácticas en ASP.NET y AJAX Isabel Gómez Microsoft Development Advisor Jose Manuel Alarcón Krasis - campusMVP Directorhttp://www.jasoft.org."

Presentaciones similares


Anuncios Google