Looking for some feedback on an Event Dispatcher

If the es provided idempotency why could they only be processed once? Also do they need perfect ordering?

Because the command handler maybe send mails and I don’t want duplicated mails.

Also the perfect ordering of commands sent from client should be necessary.

Regards.

Ziwen

How would you suggest perfect ordering with multiple processors?
Surely some commands are faster than others if two are being done at
the same time and the first takes off queue but spend 1.2 seconds and
the second only .5 the second would finish first. Unless you support
some kind of batching internally where a command is really a command[]

The clients are Silverlight based, assume user invokes Command A and B for the same aggregate in sequence,

If Command B starts to be handled before A is being done and writes new events to ES successfully, B handler will get the old aggregate

and maybe leads to some business rule violence. As you said, command[A,B] is the real command. So it might be better

to compose A and B into a single command I think.

Back to the first question. In case of command being processed only once, can I get some info from ES about if a command(event) being

subscribed has been processed by any handler? Or have to do something out of the ES?

Regards.

Ziwen