I have a back-end Scala application that needs to be integrated with RabbitMQ. The internal Scala application performs asynchronous long-running tasks. Messages for completing tasks are queued in RabbitMQ by the web client. The background application then consumes each of these messages, performing the corresponding lengthy tasks.
Should a Scala application directly use a message from RabbitMQ and just handle the corresponding tasks using Futures? Or is it better to use Akka Actors to receive these messages from RabbitMQ, and then perform long-term tasks?
What is pro and con for each approach?
source
share