Estoy desarrollando una aplicación web asp.net. Una característica de la aplicación es que el usuario puede poner en cola una cantidad de operaciones de ejecución larga, y luego presionar ejecutar la cola se procesará.Estrategia para gestionar procesos de larga ejecución en una aplicación web?
No quiero que el usuario tenga que sentarse y esperar a que se completen todas las operaciones o mantener el navegador/aplicación abierto. Sin embargo, si permanecen o vuelven a la página, me gustaría que puedan ver el estado de cada trabajo, es decir, en espera, en curso, completado o fallido.
Naturalmente, estoy buscando la solución más robusta, confiable y escalable ya que posiblemente haya una gran cantidad de trabajos en la cola en cualquier momento.
De mi investigación se ha sugerido que asp.net podría llamar al servicio de Windows? Que tal vez sea la sede de un servicio web de WCF.
Buscando cualquier consejo de alguien que pueda haber tenido un requisito similar en el pasado.
Como usted dice, no estoy estrictamente tratando de programar nada, pero Quartz.NET se ve muy interesante. Idealmente, me gusta llamar al servicio y decir que se ejecute después de agregar mis trabajos a la cola. Supongo que no hay mucho en esto si sondeo cada minuto más o menos ... – bigtv
Sí, también puede usar MSMQ o un simple socket para indicarle a su servicio que hay nuevos trabajos disponibles. Aquí un poco más de información sobre IPC: http://stackoverflow.com/questions/50153/interprocess-communication-for-windows-in-c-net-2-0 –
Encontrado este artículo que es bastante bueno - http: // msdn .microsoft.com/es-us/magazine/cc163482.aspx. – bigtv