Reintroducing Message Queues for Background Processing

How and why to use message queues to run asynchronous job in the background