Hi

Your email is poorly formatted so its hard to read.

On Thu, Jan 6, 2022 at 8:59 AM Vidyashree N S
<[email protected]> wrote:
>
> Hello,
>
> We have a camel route to connect to a TCP server as below:
> seda:route1    - processor-1 (Using producertemplate exchange is sent to 
> different direct endpoints)
> direct:<route1....n>    - OnException:        - CustomErrorHandlingProcessor  
>   - Processor-2    - toURI: netty:<host>:<port>?sync=true    - 
> ResponseProessor
> The TCP server URLs are dynamically generated. Whenever there are errors from 
> the direct route, we want to retry the same exchange on same or different 
> endpoints. For ex. When there is a slow server, we are receiving 
> ReadTimeoutException from netty handler in processor-1 and we would like to 
> retry on other available servers. This retry handling and endpoint selection 
> based on  failure is handled by processor-1 in the first seda route.
> When retry is attempted currently, the exchange is forwarded to the direct 
> route from 2nd time onwards, but we are unable to see the message delivered 
> at server or in the tcpdump after the first attempt.
> We tried options like reuseChannel=true(common), 
> disconnectOnNoReply=true(consumer) option at our sample server simulation. 
> Please suggest if any configurations are missing in the above solution custom 
> retry handling.
> Example URLs: Netty Producer toURL: 
> netty:tcp://127.0.0.1:6066?sync=true&requestTimeout=2000
> Netty Consumer FromURL: netty:tcp://127.0.0.1:6066?sync=true  
> maximumRedeliveries option works, but it retries the same route so the 
> drawback is we cannot select a different server endpoint in this case.
> The version that we use currently is Camel-http 3.7.4
>
> Much thanks, VNS



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to