Hi Jason-

ActiveMQ has several layers of audits built in to prevent duplicate messages on 
a per-producer, per-broker, and on a per-consumer basis. These do not go above 
the messaging application layer by design. This approach is appropriate for a 
messaging system where the goal is to reach queue size of zero (ie all messages 
processed) while being able to support scenarios such as failover and retry.

Scenarios where you are looking to de-dupe messages based on _content_ or a 
_header value_ require a higher-level application component or integration.

I suggest looking into the inbox and outbox patterns. When these are 
implemented, you are able to safely relax guarantees at the ActiveMQ layer and 
achieve insanely high throughput.

Thanks,
Matt Pavlovich

> On Aug 29, 2024, at 7:06 AM, Jason Jackson 
> <jason.jack...@itechag.com.INVALID> wrote:
> 
> I have run into an issue where I am occasionally receiving duplicate messages 
> when moving messages between ActiveMQ and a third party product using the 
> embedded Camel featured within ActiveMQ.
> 
> According to the Apache web site this can happen during a failure of some 
> time.
> 
> The way to resolve this issue is to use Idempotent consumer and check for 
> duplicate messages.
> 
> I am using a network of brokers and need to do Idempotency through the entire 
> cluster.
> 
> I am looking at using Apache Cassandra for this.  I can get Cassandra up and 
> running but I am not able to find any clean/clear documentation that shows or 
> explains how to enable this for ActiveMQ/Camel routes.
> 
> Does anyone have any links or information o how to perform this?
> 
> 
> 
> Jason


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@activemq.apache.org
For additional commands, e-mail: users-h...@activemq.apache.org
For further information, visit: https://activemq.apache.org/contact


Reply via email to