Le di a Node-Red una breve prueba esta semana. No me queda claro si admite flujos que abarcan más de una solicitud. ¿Node-Red tiene un modelo de solicitud por flujo o una sesión por flujo?
Después de haber trabajado con herramientas de programación basadas en el flujo de datos para Business Process Modeling (webMethods y Tibco), veo que una de sus características clave es la capacidad de modelar sesiones y flujos de trabajo. Sin embargo, estas herramientas son bastante grandes para los propósitos de la mayoría de los proyectos de IoT, por lo que sería genial si se pudiera lograr algo similar con Node-Red.
Una pregunta de seguimiento, en caso de que Node-Red no lo admita, es si hay algunas herramientas simples que sí admiten el modelado gráfico de los flujos de sesión.
fuente
Respuestas:
La respuesta es no y sí.
Los flujos en el nodo rojo son bastante estáticos, no existe la noción de crear instancias de un flujo cuando llegan las primeras solicitudes de modo que pueda tener una instancia de un flujo por solicitud.
Tampoco hay una noción incorporada de una sesión que le permita asociar mensajes que fluyen a través de flujos con una sesión.
Sin embargo, usted mismo puede construir estas cosas con relativa facilidad. Node-red proporciona una noción de flujo y estado global, al que se accede mediante los objetos
flow
yglobal
, consulte https://nodered.org/docs/writing-functions#storing-data . Lo que haría es enviar una cookie a los clientes y luego asociar explícitamente una solicitud entrante con el estado global o de flujo guardado. Luego puede escribir código que sea "consciente de la sesión" según el estado de la sesión guardada. Esto funciona bien en los nodos de función, pero tendrá algunos problemas con los nodos integrados que hacen cosas como limitar la velocidad o dividir y fusionar mensajes porque generalmente no son conscientes de la noción de sesión.En el ejemplo de pizza, mantendría el estado de un pedido en el flujo o en el contexto global y accedería al estado del pedido correspondiente en función del valor de la cookie.
fuente
La respuesta corta es sí , al menos según esta solicitud de función :
Esta solicitud se cierra con una confirmación que indica que se agrega un nodo de socket web, que se basa en un token de sesión.
fuente