Gearman was initially written in Perl and has been translated to C for more portability.
It's a job server that allows computational tasks to run in parallel.
Gearman also handles load balancing for those tasks, so computations won't crash the server or delay data processing.
Besides the job server, a C library, libgearman, is also packed with Gearman. This library allows Gearman to communicate with C-powered apps and do its work nu-interrupted.
Here are some key features of "Gearman":
· Fast processing
· Flexibility, for a wide usage application
· Job retries
· Round robin scheduling
· Fault tolerance, so crashes don't stop the server
What's New in This Release: [ read full changelog ]
· Added GEARMAN_CLIENT_GENERATE_UNIQUE, with default set to not generate.
· Experimental addition to queue service which will allow a queue to be stored on shutdown (--libsqlite3-store-on-shutdown).