Stateless saga

Is it usual to have simple stateless saga’s/process managers that are there just to translate event to command? I receive event from external system and in order to issue command internally I just have to map it to the command object which has more less same data structure as event.

Is there maybe some other best practice for this kind of logic? Don’t know if direct forwarding of external event (from AMQP) directly to Aggregate is smart idea, since I understood aggregates consume commands and emit events, while Sagas consume events and emit commands.

Hi Bojan,

it is usual to have components that do this, but I wouldn’t implement them using Sagas/Process Managers. The overhead of creating and managing instances is too big for something that doesn’t really need a lifecycle.
My rule of thumb: if your Saga doesn’t have state, make it a “regular” event handler.

Cheers,

Allard