There are a few options when it comes to choosing a job server and API. Gearman has benefited from many active open source contributors who have each introduced a new project or helped out with an existing one. Some projects are more active than others, each have varying features and performance, but they are all compatible with one another (except for some new protocol additions). If you need help figuring out which option would best suit your needs, get in touch!
A job server written in C/C++ under the BSD license that contains all of the latest protocol additions. Development for this is very active, with threading, persistent queues, and pluggable protocols now supported. Replication and better statistics reporting are coming soon. This installs an executable called 'gearmand' (usually in /usr/local/sbin). The C library, libgearman, is bundled in the same package.
A java implementation that is both the gearman library and a standalone job server.
The original Perl job server that can be found on CPAN as Gearman::Server. This installs an executable called 'gearmand' (usually in /usr/local/bin).
The C client & worker API under BSD license that can be found in the same package as the C server. This library is closely tied with the gearmand C job server, sharing low level connection and protocol code.
This is included as part of the gearmand and libgearman package above. This tool allows you to run Gearman clients and workers from the command line or in shell scripts. This is installed as an executable called 'gearman' (usually in /usr/local/bin).
There are three Perl client implementations, two of which are Pure Perl and one which is a wrapper around the libgearman C library.
This pure Perl API can be found in CPAN under Gearman::Client and Gearman::Worker.
A simpler API can be found under AnyEvent::Gearman.
This module uses the AnyEvent framework and provides a event-driven asynchronous client and worker.
A Perl module that wraps the libgearman C library. On CPAN under Gearman::XS.
There are two PHP extensions, one which is a pure PHP extension and one which wraps the libgearman C library.
A pure PHP API that can be found as Net_Gearman on PEAR.
In addition, there is a framework that can use either of the two extensions above for managing a group of PHP based Gearman workers.
A set of MySQL UDFs built on the libgearman C library. This exposes the client API functions to SQL queries, triggers, and stored procedures.
A set of PostgreSQL UDFs built on the libgearman C library. This exposes the client API functions to SQL queries, triggers, and stored procedures.
The Gearman UDFs for Drizzle are included in the main Drizzle tree and tarballs. See ./configure options for enabling them.
A JMS Provider (gearman-jms) implemented using Gearman-Java as its back-end.
GearmanSharp is a C# / .NET API for Gearman, developed for .NET 3.5. Not a complete implementation of the protocol yet. Contributions are welcome!
A C# / .NET library developed using Mono 2.x. Compiles and runs using the Microsoft C# compiler suite as well, but all active development is done using Mono.
Server monitoring tool developed in PHP, to watch server statistics.