REST APIs and messaging : <p>I have a system that exposes a REST API with a rich set of CRUD endpoints to manage different resources. 
The REST API is used also by a front-end application that executes calls by using Ajax.</p>

<p>I would like to make some of these calls asynchronous and add reliability.</p>

<p>The obvious choice seems a message broker (ActiveMQ, RabbitMQ, etc...).</p>

<p>Never used message brokers before and I am wondering if they can be "put in front of" the REST API without having to rewrite them. </p>

<p>I do not want to access the REST API only through the messaging system: for some endpoints, a call must always be synchronous and the reliability is less important (mainly because in case of error the user receives an immediate feedback).</p>

<p>Would a full ESB be a better option for this use case?</p>
