[
https://issues.apache.org/jira/browse/CAMEL-7302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13937707#comment-13937707
]
Alexander Azarov commented on CAMEL-7302:
-----------------------------------------
One extra note. It seems that `disruptor` component solves the problem -
https://github.com/alaz/camel-pubsub/commit/78d96521b1ac9309c9bf8025d233a6f48110dc9f
Which is great for us, we may mitigate this problem by simply switching the bus
to Disruptor
> Pubsub SEDA results in concurrent consumers
> -------------------------------------------
>
> Key: CAMEL-7302
> URL: https://issues.apache.org/jira/browse/CAMEL-7302
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 2.11.4, 2.12.3
> Reporter: Alexander Azarov
> Priority: Critical
>
> SEDA consumers by default use a single consumer thread, thus a processor may
> be certain the messages come in order, i.e. sequentially.
> But this behavior changes drastically when using publish-subscribe SEDA
> queue. Since it makes use of "multicast" and "paralellProcessor" internally,
> consumer routes get called via a threadPool and thus the consumer effectively
> (and implicitly) becomes a "concurrent consumer".
> In our application this results in multiple threads running the same
> processor and we cannot guarantee the messages get processed in order.
> I have prepared a small demonstration to show the case -
> https://github.com/alaz/camel-pubsub
--
This message was sent by Atlassian JIRA
(v6.2#6252)