There are some tasks, such as asynchronously-generated web content, where a message queue is the obvious solution. But there are a class of problems where either a message queue or batch processing system (e.g., Hadoop) could be used. Consider the summation of user mention counts from the Twitter streaming API for an example; either a job is put on a queue for each tweet containing a mention, or each of the mentioning tweets are thrown into a bucket that is used as the source for a batch job that recurrently executes.<p>From what's mentioned in the article, it sounds like some of the tasks that Beanstalk is being used for at PostRank are the same type of tasks that other companies, such as FlightCaster, are doing with Hadoop/Cascading.<p>The trade-off seems to be that message queues are more flexible and can offer lower latency of job completion but batch processing systems provide better support for admin concerns like adding worker nodes, debugging, and reporting.