2012-06-14 14 views
5

¿Cuáles son las ventajas de usar controladores asíncronos en mi sitio web ASP.NET MVC? Explique usando términos simples; No soy un experto en .NET¿Cuál es la ventaja de usar controladores asíncronos en asp.net mvc?

+0

Respuesta corta: Para hacer que su sitio web sea más sensible. Si tus usuarios están atascados mirando fijamente una pantalla en blanco mientras tu servidor procesa un montón de cosas, decidirán que tu sitio web está roto y se irán. –

Respuesta

4

Creo que la documentación dice que en términos muy simple: http://msdn.microsoft.com/en-us/library/ee728598.aspx

clase El AsyncController le permite escribir la acción asíncrona métodos. Puede utilizar métodos de acción asíncrona para solicitudes de larga duración, no vinculadas a la CPU. Esto evita bloquear el servidor web desde realizando un trabajo mientras se procesa la solicitud.

URL de trabajo: Using Asynchronous Methods in ASP.NET MVC 4

+1

¿Puede proporcionar un ejemplo de "solicitudes consolidadas de larga ejecución y sin CPU"? Los métodos de acción están destinados a regresar, ¿cómo se pueden sincronizar cuando necesitan completar su trabajo antes de que el servidor devuelva un 'ViewResult'? – Omar

+0

@Omar Un ejemplo de solicitud de larga duración sin conexión a la CPU probablemente sea algo así como un sitio web de agregación de noticias dinámico que devuelve los titulares de 10 sitios web populares de noticias: si el tiempo promedio de respuesta es de .5 segundos para cada sitio web, tomaría 5 segundos para completar ... con los controladores asíncronos se puede hacer en aproximadamente ~ 0.5 segundos. Podría haber ** muchos ** otros ejemplos, algunos son más adecuados que otros. No soy un experto en MVC, pero hasta donde entiendo los bloques 'ViewResult' hasta que se hayan completado los 10 eventos asíncronos ... puedes obtener más detalles en el artículo que he vinculado en mi respuesta. – Kiril

+4

Mi artículo asíncrono que cita es antiguo. Consulte http://www.asp.net/mvc/tutorials/mvc-4/using-asynchronous-methods-in-aspnet-mvc-4 que proporciona enlaces a esta pregunta. – RickAndMSFT

Cuestiones relacionadas