Why would you need a queue? Needs vary, but examples include generating thumbnails, uploading content to an external store (such as S3), encoding video/audio, sending large numbers of emails, etc.

The queues/asynchronous messaging tools I’ve found so far:

Some of these are actually interfaces to queue/message processors rather than being the actual queue themselves, and others allow you to mix and match - for example, Async Observer can use Apache ActiveMQ or Reliable Messaging amongst others.

My next job is to go through and check out the functionality of each one and see if any is right for our purpose - if not, it’ll be time to roll our own!