Ejecución de tareas automáticas en secuencia

<< Clic para mostrar Tabla de Contenidos >>

Navegación:  Automatización de Procesos con poco código > Studio Cloud -ambiente de autoría > Bizagi Studio > Asistente de Procesos > Modelar Procesos > Mejores prácticas en modelado de procesos >

Ejecución de tareas automáticas en secuencia

Introducción

En Bizagi también se pueden ejecutar subprocesos múltiplles como una actividad asincrónica. Consulte Ejecutar varias instancias de forma asincrónica. Sin embargo, debe tener en cuenta las mejores prácticas al ejecutar secuencias o una combinación de actividades asincrónicas con subprocesos asincrónicos. Esta sección explica las recomendaciones cuando ejecuta una serie de actividades en secuencia.

 

Ejecución de actividades en secuencia

Cuando modela una secuencia de actividades como tareas de servicio o subprocesos multiples configurados como síncronos, Bizagi ejecuta todas las tareas en la misma transacción.

 

Goodpractices29

 

note_pin

Esta no es una práctica recomendada. Recomendamos usar comportamientos asíncronos.

 

Para el subproceso múltiple, los casos se crean sincrónicamente y se tratan en la misma transacción, a menos que haya un elemento asíncrono dentro del subproceso. En caso de que falle alguna de las ejecuciones, Bizagi detendrá la transacción y hará rollback, al inicio de la transacción. Tenga en mente que, cuando tiene un conjunto largo de ejecuciones sincrónicas, puede potencialmente ralentizar el sistema debido a la alta carga de recursos para ejecutar en una gran transacción.

 

Para evitar esto, evalúe para cada actividad si esta debería ser:

 

a. Una actividad asincrónica.

b. Una tarea de ejecución con una expresión onExit u onEnter.

 

note_pin

Considere cuando haga el análisis que, algunos servicios que se encuentren en actividades sincrónicas deben ser ejecutados de nuevo.

 

note_pin

Si usted quiere guardar el rollback completo hasta el inicio del caso, la mejor opción es la b. De esa manera, se crearán menos entradas en la base de datos (tablas relacionadas a tareas asincrónicas).

Ejecución asincrónica como práctica recomendada

En este escenario, la mejor práctica es configurar cada ejecución tanto para las tareas de servicio como para varios subprocesos utilizando la propiedad asincrónica. Esta propiedad le permite a Bizagi ejecutar cada tarea por separado (en transacciones individuales), en lugar de ejecutar una transacción larga.

 

Goodpractices30

 

Las actividades asincrónicas con la retroalimentación (feedback) deshabilitado y los reintentos, son ejecutados por el Scheduler.

 

Cuando tiene varias actividades asíncronas combinadas en secuencia con otros elementos BPMN, la transacción de la tarea asíncrona extiende la ejecución de otros elementos hasta que encuentra alguno de los siguientes elementos:

 

Temporizador

evento final

Compuerta convergente como sincronización y aún no se cumple la condición.

Tarea de usuario o evento manual

otra tarea asincrónica

 

Por ejemplo, cuando una actividad asincrónica inicia su ejecución por el Scheduler,, la misma transacción continúa hasta que encuentra alguno de los elementos mencionados anteriormente.

 

Goodpractices31

Es muy importante tener esto en cuenta al definir el tiempo de espera (timeout) de la actividad asincrónica, porque, si hay otros elementos ejecutados en secuencia, esto puede afectar el tiempo de respuesta de la actividad asincrónica. La mejor práctica es evitar transacciones de larga duración convirtiendo tanto como sea posible las tareas automáticas en actividades asincrónicas.


Last Updated 9/12/2023 9:38:25 AM