Symphony is a subscription-based asynchronous job system. It allows you to define jobs that watch for lightweight events from a distributed-messaging AMQP broker, and do work based on their payload.
It includes several executables under bin/:
symphony:: A daemon which manages startup and shutdown of one or more Workers running Tasks as they are published from a queue.
symphony-task:: A wrapper that runs a single task, useful for testing, or if you don't require the process management that the symphony daemon provides.
class WorkerTask < Symphony::Task # Process all events subscribe_to '#' def work( payload, metadata ) puts "I got a payload! %p" % [ payload ] return true end end
For a more detailed description of usage, please refer to the USAGE document.
gem install symphony