Elsa workflow or similar


Does NServiceBus has something similar to Elsa workflow? Would be interesting to have something similar…

ELSA · An open source .NET Standard workflows library (elsa-workflows.github.io)

Hi @ekjuanrejon,

The way we handle workflows in NServiceBus is using sagas. The messages (or activities in terms of Elsa) that flow through the system, may or may not have an order, depending on how the saga is implemented.

It’s a message handler in a saga that decides how the saga continues. This grants the user with full control to do any type of checks on the system before deciding how to continue. Subsequent messages can be sent from a message handler to drive the next part of the process (or subsequent activities).

Sagas also have a state, which is stored using the configured persistence option in the endpoint. NServiceBus doesn’t store at what point of the business process the saga resides, it’s either ongoing or not. The state is user-defined and holds data that is of essence to make decisions within the saga.

For the visualization part of things, we have a tool called ServiceInsight. ServiceInsight can visualize the business process, starting from the first message (or activity) that triggered a saga being created. It uses a graph to visualize how the messages flow through the system. Although it’s not exactly the same as Elsa, the concept is very similar.

Elsa can be used in combination with NServiceBus as well. You could configure activities to send out or consume messages. By using NServiceBus to process those messages, you would get the added benefit of retries and you’d be able to rely on the Elsa dashboard if you were already using it.

Hope that helps,