Programador de código abierto basado en Java con interfaz de usuario web

Tengo una aplicación que requiere la programación de trabajos por lotes del orden de quizás 100 trabajos por día. No exijo (todavía) que los trabajos estén encadenados: ahora mismo cada uno es independiente de los demás.

Esto es lo que necesito:

  1. La programación (qué trabajos se ejecutarán y cuándo) debe poder verse y editarse a través de una interfaz de usuario web. La interfaz de usuario debe brindarnos la capacidad de controlar la programación periódica, además de enviar manualmente trabajos ad hoc y reiniciar trabajos fallidos.
  2. El cronograma debe ser persistente, de modo que si hay una interrupción del servidor, los trabajos que se perdieron durante la interrupción se pueden iniciar automáticamente cuando se restaura el servidor (o no se inicia; desea que sea configurable por trabajo).
  3. Idealmente, el planificador sería integrable, liviano y capaz de ejecutarse en la misma JVM que los trabajos reales que inicia.
  4. Idealmente, sería de código abierto / una licencia sin costo.

Si importa, los trabajos reales que se lanzarán son trabajos de Spring Batch.

Miré (brevemente) a Quartz, pero no parece tener una interfaz de usuario. La obsidiana parece costar dinero.

¿Alguien puede indicarme la dirección correcta y/o darme algunas cosas que debo evitar?

¡Gracias!

Matthew, ¿puede actualizar su pregunta para explicar por qué la media docena de GUI de código abierto para Quartz aparecieron al buscar en Google "quartz scheduler gui open source" no son apropiados para sus necesidades? Nunca he usado ninguno de ellos, pero parece que el problema se ha investigado antes.
@CPerkins No puedo decir que no sean apropiados. Si busco en Google "herramientas de compilación de código abierto", también obtendré un montón de resultados. Al no tener educación, agradecería que alguien me aconsejara comenzar con Maven o Gradle. No tengo educación sobre el espacio de código abierto para los programadores de GUI, por lo que pido orientación. Miré algunos de los que están disponibles, pero encontré documentación ligera, enlaces rotos, etc. que me pusieron nervioso. Entonces, pedí ayuda. Pero Quartz + una interfaz gráfica de usuario de código abierto estaría bien para mí, si alguien pudiera recomendar una buena.
De acuerdo, supuse que los habías probado y los habías encontrado deficientes y me preguntaba por qué. Buena suerte.

Respuestas (1)

Aunque no es para lo que está destinado (servidor de integración continua), Jenkins podría funcionar para su objetivo:

  • funciona en la JVM, es fácil de instalar, sin dependencias.
  • le permite definir trabajos con diferentes tipos de pasos de ejecución
  • las ejecuciones se pueden programar usando expresiones similares a cron o se pueden ejecutar manualmente
  • toda la configuración se conserva en el sistema de archivos
  • es compatible con la composición de tuberías