Repolode
xuxueli

xuxueli/xxl-job

Plataforma distribuida de planificación de tareas con consola web, compatible con Cron y activadores de intervalo fijo, trabajos de difusión fragmentados, conmutación por error y reintentos.

Estrellas
30,622
Forks
11,494
Issues abiertos
72
Último commit
hace 13 días

¿Qué es?

XXL-JOB es una plataforma distribuida de planificación de tareas para aplicaciones Java. Los trabajos se crean, inician, detienen y supervisan desde una consola web, mientras que los ejecutores ejecutan la lógica de los trabajos en uno o varios procesos de trabajo que se registran en un planificador central. El planificador está diseñado para ejecutarse como un clúster, y los ejecutores también pueden desplegarse en clústeres para ofrecer alta disponibilidad en la ejecución de trabajos.

La plataforma cubre necesidades habituales de planificación: activadores Cron, de frecuencia fija y de demora fija; activadores mediante API y manuales; y dependencias entre trabajos padre e hijo. La ejecución se controla mediante estrategias de enrutamiento como round robin, selección aleatoria, hash consistente y conmutación por error, además de trabajos de difusión fragmentados que se ejecutan en todos los nodos ejecutores. Los trabajos fallidos se pueden reintentar, los trabajos que superan el tiempo límite se interrumpen y las alertas de error se envían por correo electrónico, con un punto de extensión para otros canales.

Las funciones operativas incluyen la edición de trabajos en línea con un IDE web GLUE compatible con scripts de shell, Python, Node.js, PHP y PowerShell; registros de ejecución consultables por páginas; informes de ejecución; permisos para usuarios y ejecutores; y registros de auditoría. La comunicación entre el planificador y los ejecutores está cifrada, y una API OpenAPI basada en REST permite la integración con servicios escritos en otros lenguajes.

Funciones clave

  • 01Consola web para crear, iniciar, detener y editar trabajos sin necesidad de volver a desplegar.
  • 02Activadores de trabajos Cron, de intervalo fijo, de demora fija, mediante API, manuales y con dependencias padre-hijo.
  • 03Trabajos de difusión fragmentados y estrategias de enrutamiento como round robin, hash consistente y conmutación por error.
  • 04Límites de tiempo para los trabajos, reintentos en caso de error y alertas por correo electrónico, con un punto de extensión para otros canales.
  • 05IDE web GLUE para trabajos de código y scripts en línea, con historial de versiones.
  • 06API OpenAPI REST independiente del lenguaje para integrar ejecutores escritos en otros lenguajes.

Casos de uso

  • Ejecutar trabajos programados de sincronización de datos o liquidación en un clúster de servicios Java.
  • Dividir una carga de trabajo por lotes grande en fragmentos que se ejecutan en paralelo en varios nodos ejecutores.
  • Activar scripts de mantenimiento de shell o Python según un horario, con registros y alertas centralizados.
  • Sustituir trabajos cron dispersos en varios servidores por una única consola de planificación supervisada.

Inicio rápido

  1. 1

    Clona el repositorio desde GitHub

  2. 2

    Inicializa la base de datos con el script SQL del repositorio

  3. 3

    Ejecuta la consola de administración con Docker

    docker pull xuxueli/xxl-job-admin

Antes de usarlo

  • Tiene licencia GPL-3.0, una licencia copyleft que exige que las obras derivadas se publiquen como código abierto bajo las mismas condiciones.
  • Requiere un backend de Java y configurar una base de datos, por lo que alojarlo por cuenta propia requiere cierto esfuerzo.

Temas

Preguntas frecuentes

¿Qué es xxl-job?
Plataforma distribuida de planificación de tareas con consola web, compatible con Cron y activadores de intervalo fijo, trabajos de difusión fragmentados, conmutación por error y reintentos. XXL-JOB es una plataforma distribuida de planificación de tareas para aplicaciones Java. Los trabajos se crean, inician, detienen y supervisan desde una consola web, mientras que los ejecutores ejecutan la lógica de los trabajos en uno o varios procesos de trabajo que se registran en un planificador central. El planificador está diseñado para ejecutarse como un clúster, y los ejecutores también pueden desplegarse en clústeres para ofrecer alta disponibilidad en la ejecución de trabajos.
¿xxl-job es gratuito? ¿Qué licencia tiene?
xxl-job es open source bajo la licencia GPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿xxl-job sigue mantenido?
Mantenimiento activo. El último commit de xxl-job fue el 9 oct 2026.
¿Para qué puedo usar xxl-job?
Ejecutar trabajos programados de sincronización de datos o liquidación en un clúster de servicios Java. Dividir una carga de trabajo por lotes grande en fragmentos que se ejecutan en paralelo en varios nodos ejecutores. Activar scripts de mantenimiento de shell o Python según un horario, con registros y alertas centralizados. Sustituir trabajos cron dispersos en varios servidores por una única consola de planificación supervisada.
¿Cómo se instala xxl-job?
Clona el repositorio desde GitHub Inicializa la base de datos con el script SQL del repositorio Ejecuta la consola de administración con Docker: docker pull xuxueli/xxl-job-admin
¿Dónde consigo xxl-job?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/xuxueli/xxl-job

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados