You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2022/09/02 09:17:00 UTC

[jira] [Resolved] (CAMEL-9692) LMAX Disruptor Component: Make it compatible with async routing engine

     [ https://issues.apache.org/jira/browse/CAMEL-9692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen resolved CAMEL-9692.
--------------------------------
    Resolution: Won't Fix

> LMAX Disruptor Component: Make it compatible with async routing engine
> ----------------------------------------------------------------------
>
>                 Key: CAMEL-9692
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9692
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-disruptor
>    Affects Versions: 2.16.2
>            Reporter: Raúl Kripalani
>            Priority: Major
>             Fix For: Future
>
>
> Currently, the {{camel-disruptor}} component is not compatible with the async routing engine. 
> Therefore, in an InOut scenario, it keeps the calling thread waiting until the CountDownLatch fires.
> This degree of synchronicity is contrary to a message-oriented middleware and contrary to the philosophy of the LMAX Disruptor itself.
> We should strive to make it fully async via an {{AsyncCallback}}.
> According to https://stackoverflow.com/questions/6559308/how-does-lmaxs-disruptor-pattern-work, it should be natively possible:
> bq. We also allow consumers to wait on the results of other consumers without having to put another queuing stage between them. A consumer can simply watch the sequence number of a consumer that it is dependent on. This avoids the need for join stages in pipeline.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)