You must choose a messaging infrastructure that ensures event delivery is in order for each consumer, even if multiple threads are delivered in parallel with different consumers. Ie, if you feed events in the order on the sending side, consumers will receive them in order.
Then, there are two main approaches to handling this situation:
: CQRS . , . . . , ( , ItemCreated ItemChanged ).
. ( ) /, . ItemCreated ItemChanged , , , (/ ) . , (, ), .