XStreamCommandSerializer

Hi,

do you have plans for an XStreamCommandSerializer similar to the Event
and Saga serializers?

Just asking, otherwise I'll write one.

Geir

Hi Geir,

funny you ask. A colleague of mine just invited me (an hour ago) to have a look at their AmqpEventBus and AmqpCommandBus (they use RabbitMQ) implementations. The command bus uses an Command Serializer to serialize the command prior to placing it on the queue. We are planning to integrate their work into Axon very soon.
I have also been thinking about a single XStreamSerializer that implements all the Event / Command / Saga serializer interfaces. That could make configuration a lot simpler.

If you don’t want to wait for it, you can easily implement an XStreamCommandSerializer by wrapping the GenericXStreamSerializer (you can use the XStreamEventSerializer as an example).

Cheers,

Allard

Thanks Allard,

It's no hurry over here and I am also very interested in the Amqp
stuff you mention.

Do you know if there is a resequencer at the receiving end since
RabbitMQ doesn't guarantee message ordering?

Geir

Hi Geir,

that’s an interesting issue. We’ve planned a meeting on monday to setup the specifications of the AMQP Event/Command Bus. Message ordering will be one of them.

Although I think it’s a challenge to re-order everything on the consumer side. What if there are many messages to process? I am not sure it is safe to assume we can keep them all in memory. It does look like Basic.Recover allows unacked messages to be redelivered, which seems to me will keep ordering intact. Sounds like a proof-of-concept.

Cheers,

Allard