tag quartz net example asp asp.net iis windows-services quartz.net

asp.net - example - quartz net web config



Pros y contras de ejecutar Quartz.NET embedded o como un servicio de Windows (2)

Aquí hay algunas cosas que puede considerar mientras decide si debe ejecutar incrustado o no:

  1. Si va a crear trabajos ÚNICAMENTE desde la aplicación de hospedaje, ejecute embedded. De lo contrario, ejecute como un servicio.

  2. Si sus trabajos pueden necesitar permisos que sean diferentes a los permisos que tiene la aplicación web, ejecútelos como un servicio.

  3. Si sus trabajos son trabajos de larga ejecución, o trabajos que usan mucha memoria, se ejecutan como un servicio.

  4. Si necesita ejecutar sus trabajos en un entorno en clúster para obtener rendimiento, escalabilidad o tolerancia a fallas, ejecútelo como un servicio.

De los elementos anteriores puede deducir que mi preferencia es ejecutarlo como un servicio. Esto se debe a que si va a tomarse la molestia de configurar un planificador de tareas, esto significa que tiene trabajos que deben ejecutarse según un cronograma o trabajos de larga ejecución. Un servicio es generalmente la mejor opción para este tipo de trabajo.

Quiero agregar la programación de cuarzo a una aplicación ASP.NET.

Se usará para enviar correos electrónicos en cola.

¿Cuáles son los pros y los contras de ejecutar quartz.net como servicio de Windows vs integrado?

Mi principal preocupación es cómo Quartz.NET en modo integrado maneja el número variable de procesos de trabajo en IIS.


Quartz.NET se puede crear una instancia por aplicación (la configuración de la granja de servidores web ordena el número de programadores). Puede ejecutar múltiples planificadores de forma segura si tiene sus trabajos respaldados en una base de datos y tiene Quartz.NET configurado en modo agrupado (y los relojes se sincronizan de forma natural).

La principal preocupación es el manejo del grupo de aplicaciones antes de IIS 7.5. Sin comprobaciones constantes, el trabajador de la aplicación puede reciclarse y el programador se desactivará hasta que alguien emita una solicitud web para volver a iniciar el grupo de aplicaciones. IIS 7.5 tiene la nueva característica para mantener los grupos de aplicaciones ejecutándose todo el tiempo.

De lo contrario, no debería haber una gran diferencia entre los dos modelos.