Module: Gearman

Defined in:
lib/gearman.rb,
lib/gearman/task.rb,
lib/gearman/util.rb,
lib/gearman/client.rb,
lib/gearman/server.rb,
lib/gearman/worker.rb,
lib/gearman/taskset.rb

Overview

Gearman

Usage

require 'gearman'

# Create a new client and tell it about two job servers.
c = Gearman::Client.new
c.job_servers = ['127.0.0.1:7003', '127.0.0.1:7004']

# Create two tasks, using an "add" function to sum two numbers.
t1 = Gearman::Task.new('add', '5 + 2')
t2 = Gearman::Task.new('add', '1 + 3')

# Make the tasks print the data they get back from the server.
t1.on_complete {|d| puts "t1 got #{d}" }
t2.on_complete {|d| puts "t2 got #{d}" }

# Create a taskset, add the two tasks to it, and wait until they finish.
ts = Gearman::TaskSet.new(c)
ts.add_task(t1)
ts.add_task(t2)
ts.wait

Or, a more simple example:

c = Gearman::Client.new('127.0.0.1')
puts c.do_task('add', '2 + 2')

Defined Under Namespace

Classes: BackgroundTask, Client, InvalidArgsError, NetworkError, ProtocolError, Server, ServerDownException, Task, TaskSet, Util, Worker