support long-running InOut requests over jms
--------------------------------------------

                 Key: CAMEL-3456
                 URL: https://issues.apache.org/jira/browse/CAMEL-3456
             Project: Camel
          Issue Type: Improvement
          Components: camel-jms
            Reporter: Jim Newsham


Long-running requests (requests which take many minutes or possibly hours) over 
jms are currently problematic:

* When the "requestTimeout" parameter on the producer is exceeded, the producer 
will give up waiting for a response and log an exception.  To prevent this, the 
requestTimeout parameter could be set to a much higher value, but this doesn't 
seem reasonable, because the producer needs some way to know when the consumer 
is not really handling the request; the 20 second default for this parameter 
seems reasonable for this purpose.  Instead, there should probably  be some way 
for the consumer to communicate to the producer that the long-running request 
is still in progress.  I would suggest that the jms consumer could 
automatically send a periodic heartbeat message to the producer to let it know 
that the request is still being handled.

* Long-running requests which occupy a pooled thread while waiting can exhaust 
the thread pool.  

* If Camel is restarted, the exchange will be lost.

See 
http://camel.465427.n5.nabble.com/long-running-requests-over-jms-td3312711.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to