What you want is a message queue solution. These do exactly what you want. Your main script can dole out tasks, and workers pick the tasks up, complete them, and report in. An added bonus is that this can give you some parallelism, potentially speeding up your search. Take a look at Starling: http://rubypond.com/articles/2008/07/17/the-complete-guide-to-setting-up-starling/ Drb: http://chadfowler.com/ruby/drb.html http://segment7.net/projects/ruby/drb/introduction.html AP4R: http://ap4r.rubyforge.org/wiki/wiki.pl?HomePage in addition to Rinda, bj, beanstalkd, sparrow, rq... -- Mark.