Dariusz Gafka
Sep 21, 2022

--

I really like the question as it goes deeper for the fun stuff :)

You can guarantee order by running single consumer on given channel (queue).

If you want to run concurrently and keep the ordering, you can have multiple channels and route the message based on the headers using Router (https://docs.ecotone.tech/messaging/messaging-concepts/message-endpoint/message-routing).

Guaranteed delivery in case of Amqp is at least once. However Ecotone by default provides idempotent consumer implemention (https://docs.ecotone.tech/modules/dbal-support#deduplication-idempotent-consumer).

--

--

Dariusz Gafka
Dariusz Gafka

Written by Dariusz Gafka

I am sharing knowledge and experience about DDD, Event Sourcing and Message-Driven Systems. And making them effortless to follow with Ecotone Framework in PHP.

No responses yet