IPF Persistent Scheduler
Introducción
IPF’s Persistent Scheduler le permite programar trabajos de cualquier tipo.
Se basa en el Programador de Quartz y admite dos tipos de trabajo scheduling:
-
Trabajos recurrentes: definidos utilizando cron expressions, que son temporizadores especializados que definen puntos en el tiempo para la ejecución recurrente de tareas.
-
Trabajos únicos: definidos utilizando un Java
LocalDateTimeorInstantobjeto para ejecución única con precisión de milisegundos scheduling.
El scheduler también admite calendarios, que pueden ser utilizados para excluir ciertos bloques de tiempo de scheduling. Esta configuración permite la ejecución flexible de trabajos tanto únicos como recurrentes. También cuenta con una capa de persistencia, lo que significa que los trabajos se guardan en una base de datos, por lo que incluso si una aplicación falla o restarts, anteriormente scheduled los trabajos se recuperan y continúan la ejecución según lo planeado.
El Scheduler incluye sistemas de seguridad, como un módulo de reprogramación que se ejecuta durante el inicio.
Este módulo restores todo previamente scheduled trabajos en Quartz tras un fallo.
Para trabajar con el Scheduler, comience con el SchedulingModuleInterface.
Finalmente, el persistent scheduler está diseñado para ejecutarse en un Akka Cluster para asegurar que los trabajos sean scheduled a través del clúster y puede sobrevivir a cualquier número de fallos de nodos (incluyendo un total outage). Ciertos aspectos como la rehidratación de trabajos (lo que significa recargar trabajos tras un fallo) y el procesamiento de failed jobs se ejecutan en un Cluster Singleton para prevenir el procesamiento duplicado en estos escenarios.
La arquitectura para el scheduler--