Prácticas recomendadas para la ejecución de flujos de trabajo
No programe un flujo de trabajo para que se ejecute con una frecuencia superior a 15 minutos, ya que podría limitar el rendimiento general del sistema y crear bloques en la base de datos.
Asimismo, evite dejar los flujos de trabajo en estado pausado. Si crea un flujo de trabajo temporal, asegúrese de que este pueda terminar correctamente y no permanecer en estado paused. Si está en pausa, eso implica que necesita mantener las tablas temporales y, por lo tanto, aumentar el tamaño de la base de datos. Asigne supervisores de flujo de trabajo en Workflow Properties para enviar una alerta cuando un flujo de trabajo falle o el sistema lo ponga en pausa.
Para evitar tener flujos de trabajo en estado pausado:
- Consulte los flujos de trabajo regularmente para garantizar que no hay errores inesperados.
- Mantenga los flujos de trabajo tan sencillos como sea posible, por ejemplo, dividiendo los flujos de trabajo grandes en distintos flujos de trabajo. Puede utilizar las actividades External signal impulsando la ejecución en función de la ejecución de otros flujos de trabajo.
- Evite tener actividades desactivadas con flujos en los flujos de trabajo, dejando los subprocesos abiertos y generando que muchas tablas temporales puedan consumir mucho espacio. Evite mantener las actividades en estados Do not enable o Enable but do not execute en los flujos de trabajo.
Detenga los flujos de trabajo no utilizados. Los flujos de trabajo que siguen ejecutándose mantienen conexiones con la base de datos.
Solo se debe utilizar la detención incondicional en los casos más inusuales. Esta opción está restringida a los usuarios administradores. Evite utilizar esta acción de forma regular. El no realizar un cierre limpio de las conexiones generadas por los flujos de trabajo a la base de datos afecta al rendimiento.
No realice varias solicitudes de detención en el mismo flujo de trabajo. La detención de un flujo de trabajo es un proceso asíncrono: la solicitud se registra y, después, el servidor o los servidores de flujo de trabajo cancelan las operaciones en curso. Por lo tanto, la detención de una instancia de flujo de trabajo puede llevar tiempo, especialmente si el flujo de trabajo se ejecuta en varios servidores, cada uno de los cuales debe asumir el control para cancelar las tareas en curso. Para evitar cualquier problema, espere a que se complete la operación de parada y evite detener un flujo de trabajo varias veces.