PowerJob es una nueva generación de marco informático y de programación distribuida. Admite CRON, API, frecuencia fija, retraso fijo y otras estrategias de programación. Proporciona un flujo de trabajo para organizar tareas y resolver dependencias. Es fácil de usar, potente y tiene documentación completa. permitiéndole completar fácilmente su trabajo Programación y computación distribuida de tareas complejas.
Fácil de usar: proporciona una interfaz web frontal que permite a los desarrolladores completar visualmente la administración de tareas programadas (agregar, eliminar, modificar, verificar), monitorear el estado de ejecución de las tareas y ver los registros de ejecución.
Estrategia de sincronización perfecta: admite cuatro estrategias de programación de sincronización: expresión CRON, frecuencia fija, retraso fijo y API.
Modos de ejecución enriquecidos: admite cuatro modos de ejecución: independiente, transmisión, Map y MapReduce. El procesador Map/MapReduce permite a los desarrolladores obtener capacidades informáticas distribuidas en clústeres con solo unas pocas líneas de código.
Compatibilidad con el flujo de trabajo DAG: admite la configuración en línea de dependencias de tareas, la disposición visual de las tareas y también admite la transferencia de datos entre tareas ascendentes y descendentes.
Amplio soporte de ejecutor: admite Spring Bean, clases Java integradas/externas, Shell, Python y otros procesadores, con una amplia gama de aplicaciones.
Operación y mantenimiento convenientes: admite la función de registro en línea, los registros generados por el ejecutor se pueden mostrar en tiempo real en la página de la consola frontal, lo que reduce los costos de depuración y mejora en gran medida la eficiencia del desarrollo.
Dependencias simplificadas: la dependencia mínima es solo de bases de datos relacionales (MySQL/Oracle/MS SQLServer...), y la dependencia extendida es MongoDB (utilizada para almacenar enormes registros en línea).
Alta disponibilidad y alto rendimiento: el servidor de programación está cuidadosamente diseñado para lograr una programación sin bloqueos cambiando la estrategia basada en bloqueos de la base de datos de otros marcos de programación. La implementación de múltiples servidores de programación puede lograr una alta disponibilidad y una mejora del rendimiento al mismo tiempo (admitiendo una expansión horizontal ilimitada).
Conmutación por error y recuperación: después de que falla la ejecución de una tarea, el reintento se puede completar de acuerdo con la política de reintento configurada, siempre que el clúster ejecutor tenga suficientes nodos informáticos, la tarea se puede completar con éxito.
Escenarios comerciales con requisitos de ejecución programados: como sincronizar completamente los datos cada mañana, generar informes comerciales, etc.
Hay escenarios comerciales que requieren que todas las máquinas se ejecuten juntas: como el uso del modo de ejecución de transmisión para limpiar los registros del clúster.
Hay escenarios comerciales que requieren procesamiento distribuido: por ejemplo, es necesario actualizar una gran cantidad de datos y la ejecución en una sola máquina lleva mucho tiempo. Se pueden usar procesadores Map / MapReduce para completar la distribución de tareas y movilizar todo el clúster. acelerar los cálculos.
Hay escenarios de negocio que requieren retrasar la ejecución de determinadas tareas: como el procesamiento de vencimiento de órdenes, etc.
v4.0.1
Características
Soporte PostgreSQL
Fortalezca la consola frontal y agregue información de los trabajadores, como etiquetas y el último tiempo en línea, para facilitar la resolución de problemas que no se pueden conectar.
Corrección de errores
Solucionar el problema de selección maestra del clúster de servidores
Solucionar el problema de NPE que ocurre cuando ningún trabajador está conectado al servidor
Se solucionó el problema por el cual la consola frontal mostraba incorrectamente la lista de trabajadores.