RabbitMQ is a great option for the implementation of an AMQP (Advanced Message Queuing Protocol) queuing system.
Why would you need a queuing system? So that you can offload heavy tasks to be processed in a separate process asynchronously and avoid blocking your client, on your website for instance.