What is the idea of using NMR?
Is it a little lige using SEDA or Direct components, but enables you to exchange messages between different camel contexts (in various bundles)?
What happens if a producer sends to a NMR endpoint with no consumer(s)?
Are the messages kept?
and for how long?
are the producers slowed down if "some buffer" is full, or what happens?
You've got the right idea bout the NMR. It's like SEDA or Direct, but allows inter-bundle (and inter-camelContext) communication. And, the NMR can be run in a clustered mode (with ActiveMQ under the covers) so that messages can pass transparently between different JVMs.
Hope that helps.