1

The MuleSoft HTTP ListenerConnector transforms an HTTP request into a Mule Message. It is my understanding that, as a consequence, the message is stored in a queue - therefore it can be guaranteed that the message will be delivered (once the request reached the integration platform).

In contrast, apache camel does not come with a messaging system. Therefore, I assume, the message is not stored anywhere and is lost when the destination of the message is temporarily not available.

Is that right? When using camel together with some messaging system, can the mule behavior be implemented easily?

Sven Keinath
  • 371
  • 3
  • 13
  • 1
    Yes, very easily. Once you've configured your JMS broker, implementing Mule-ish behaviour would be as simple as `from("jetty:http://localhost:{{port}}/myapp/myservice").to("jms:queue:httpqueue")` (this is Camel's Java route DSL). – DavidS Nov 23 '16 at 21:38

1 Answers1

3

Yes, that is true Camel does not come with a messaging or runtime system. You need to do decide on those yourself. I have used Camel with Karaf and messaging system such as ActiveMQ and RabbitMQ. You can easily ensure delivery use both of those together with the correct configuration. Both support persistent messaging, persistent queues and redelivery. Off course the main to do decide is, what happens if the host running your eventbus dies. In that case you need to consider clustering. The same applies for Mule.

Souciance Eqdam Rashti
  • 3,143
  • 3
  • 15
  • 31