¿Cómo configuro los estados para la recuperación o passivation?
Dentro de la State Definiciones de un flujo en flo-lang, así como la capacidad de configurar si un state es terminal o no, también puede definir:
-
Si un flujo debe ser pasivado cuando la acción asociada con eso state ha sido procesado.
-
Si el state no es recuperable
Estas opciones son configurables por State definición, dentro de la " State Tabla de "Definiciones" para el flujo.
Para acceder a estas opciones, usted hace clic en el State nombre
Y luego, ya sea:
-
Haga clic derecho en el State nombre, luego seleccione "Inspeccionar Nodo" de la lista
-
Presione Ctrl+Alt+I y esto presenta las opciones para el State.
Pasivación State
Configurando el State "Está pasivando" - causará que el Flujo se pasive cuando se mueva a esto State y la Acción de la Event La tabla de comportamiento se ejecuta. La pasivación elimina esencialmente la entidad de flujo de la memoria, para ser rehidratada y activada en un momento posterior.
| Puede leer más sobre consideraciones para passivation aquí - Comprensión Passivation, Recordando Entidades y Programadores |
Puede que esté interesado en hacer esto si sabe que el flujo estará inactivo durante un período de tiempo. Los ejemplos pueden incluir:
-
Envío de un pago por almacenamiento - El pago será recuperado y el procesamiento continuará en una fecha posterior. En este caso, pasivamos la instancia del flujo.
-
Envío de un pago para la verificación de sanciones-hay una buena posibilidad de que las sanciones no regresen de inmediato, por lo que no necesitamos que el flujo esté activo.
Independientemente del escenario, cualquier entrada de regreso al flujo causará que el flujo se rehidrate y se active para continuar procesando desde este state.
Recuperable State
Configurando el State ser "No Recuperable" - esto asegurará que cualquier acción asociada con el State a través de la Event La tabla de comportamiento se ejecuta solo una vez. El comportamiento predeterminado del IPF es reintentar la acción asociada con el State cuando se recupera un flujo (durante la aplicación restart). Establecer esta opción anula ese comportamiento predeterminado.
Esto significa hacer las preguntas '¿pueden las acciones asociadas con este state¿serán reproducidos?'. Donde no puedan ser reproducidos, el State debe establecerse como "No Recuperable".
Esto es particularmente útil cuando un dominio externo no puede tolerar solicitudes repetidas.