views:

108

answers:

1

Starling is a great (at least for small projects) and simple message queue, however, it doesn't actually manage or start workers that consume the queues. Workling does this for Rails projects, but doesn't work for pure ruby applications, neither for Sinatra.

Before I fork workling, or create my own custom one with threads/fork, is there another project that does it?

+2  A: 

Look at resque. It is framework agnostic and contains rake tasks to start an arbitrary number of workers to consume your queues. It uses redis lists for the queue backends, so you will need to install and manage that.

Dave Pirotte
Really nice. Since this was create for Github, and Github uses Sinatra, it has full Sinatra support. Albeit, I really intend to stick with starling, as we do not have to manage Redis' Erlang/OTP dependencies, adapting to worker (http://github.com/defunkt/resque/blob/master/lib/resque/worker.rb) from Resque's is easier than changing Workling's. Starling great advantage is that you can send ruby objects, not only json, and they will serialized/deserialized correctly. Ok: it is a messaging system: no need for real objects as messages, but it is nice.
Daniel Ribeiro
Redis is actually written in C, so you don't need to worry about Erlang. Ubuntu carries redis in its repositories so you can install from there, but it is extremely simple to install from source if you need to.
Dave Pirotte
Yes, I confused with Riak, which is in Erlang
Daniel Ribeiro