Operación
Tareas programadas, lote, Disparador y Regulador
Tres mecanismos cubren el trabajo que no llega por un canal: correr un proceso solo a una hora, procesar una lista larga con productor y consumidor, y repartir una lista en ejecuciones independientes con control del ritmo en vivo.
Tareas programadas
- Tareas programadas → Nueva tarea: nombre, proceso, planificación (una vez, intervalo, diario, semanal, mensual o cron) y zona horaria. Aplica al reiniciar el motor.
- La entrada del proceso se arma por formulario o XML y admite
${expresión}resuelta antes de cada corrida (hora(),parametro(),fechaHoy()); Probar muestra la entrada resuelta. - Opciones de ejecución: concurrencia (saltar, encolar, permitir), qué hacer si se perdió una corrida, timeout, reintentos con espera, presupuesto de tiempo y alertas al log por fallo, timeout o éxito.
- Consola → Tareas muestra estado y salud, última y próxima corrida, y permite ejecutar ahora; cada corrida queda en la bitácora con canal Scheduler.
Job de Lote
- En la tarea, pestaña Lote: un proceso Productor trae la lista, Agrupación de datos indica el nodo repetido, y un Consumidor corre una vez por registro con un mapeo de campos arrastrable; Traer una fila real ejecuta el Productor para ver datos de verdad.
- Workers en paralelo fija cuántos registros se procesan a la vez. Un registro que falla no detiene el lote; el lote falla solo si falla el Productor. No recuerda qué procesó: el Productor trae pendientes y el Consumidor los marca.
Disparador y Regulador
Disparador
- Nodo de la paleta que reparte una lista en ejecuciones hijas de a bloques con pausa, sin esperar a que terminen: el proceso responde al instante con un
IdDisparoy el cliente consulta el avance llamando al mismo proceso con_disparo. - Tres números: Bloque (hijos por bloque, 10), Pausa entre bloques (1 s) y Timeout de una pausa (120 s). El mapeo define qué recibe cada hijo.
- Consola → Disparador: estado por proceso (Ocupado, Disponible, Suspendido) y una fila por reparto con avance y botones Pausar, Continuar, Detener, Extender pausa, Bajar y Subir porcentaje. Suspender todo es el freno de emergencia: nada nuevo arranca y sobrevive al reinicio.
- Los hijos quedan en la bitácora con canal interno, marca de disparo y correlación; por defecto solo los que fallan.
- Un Disparador por proceso y un solo nivel; el nodo no espera a los hijos, no reintenta y no arma resumen.
Regulador
- Torre de control del Disparador: cada 5 segundos mira los pools de los servidores que usan los hijos y sus fallos de transporte, y ordena bajar o subir el ritmo o pausar con reglas fijas y explicadas («regla: 8 hijos esperan en Pagos»). Nunca toca un hijo en marcha.
- Tres reglas predeterminadas: bajar por espera, subir sin espera y pausar por errores de transporte. Se pueden apagar por disparo con Reglas: manuales.
- Plantillas Cuidadoso, Equilibrado (predeterminada) y Ágil según si el servidor destino se comparte con llamadas en línea; un panel de efecto con semáforo anticipa qué hará la configuración.
- Perfil por proceso: al cerrar un disparo grande aprende bloque y pausa recomendados y los aplica en el siguiente; se puede fijar a mano, soltar o borrar.
- Consola → Monitor grafica un disparo vivo y nombra el cuello de botella. Para terminar antes no hay regla que valga: hay que subir las instancias del servidor.
