Need advice about which tool to choose?Ask the StackShare community!

Gearman

76
144
+ 1
45
Kestrel

39
58
+ 1
0
Add tool

Gearman vs Kestrel: What are the differences?

Developers describe Gearman as "A generic application framework to farm out work to other machines or processes". Gearman allows you to do work in parallel, to load balance processing, and to call functions between languages. It can be used in a variety of applications, from high-availability web sites to the transport of database replication events. On the other hand, Kestrel is detailed as "Simple, distributed message queue system". Kestrel is based on Blaine Cook's "starling" simple, distributed message queue, with added features and bulletproofing, as well as the scalability offered by actors and the JVM.

Gearman and Kestrel can be primarily classified as "Message Queue" tools.

Some of the features offered by Gearman are:

  • Open Source It’s free! (in both meanings of the word) Gearman has an active open source community that is easy to get involved with if you need help or want to contribute. Worried about licensing? Gearman is BSD
  • Multi-language - There are interfaces for a number of languages, and this list is growing. You also have the option to write heterogeneous applications with clients submitting work in one language and workers performing that work in another
  • Flexible - You are not tied to any specific design pattern. You can quickly put together distributed applications using any model you choose, one of those options being Map/Reduce

On the other hand, Kestrel provides the following key features:

  • Written by Robey Pointer
  • Starling clone written in Scala (a port of Starling from Ruby to Scala)
  • Queues are stored in memory, but logged on disk

Kestrel is an open source tool with 2.8K GitHub stars and 326 GitHub forks. Here's a link to Kestrel's open source repository on GitHub.

Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Gearman
Pros of Kestrel
  • 11
    Ease of use and very simple APIs
  • 11
    Free
  • 6
    Polyglot
  • 5
    No single point of failure
  • 3
    Scalable
  • 3
    High-throughput
  • 2
    Foreground & background processing
  • 2
    Very fast
  • 1
    Different Programming Languages Channel
  • 1
    Many supported programming languages
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    What is Gearman?

    Gearman allows you to do work in parallel, to load balance processing, and to call functions between languages. It can be used in a variety of applications, from high-availability web sites to the transport of database replication events.

    What is Kestrel?

    Kestrel is based on Blaine Cook's "starling" simple, distributed message queue, with added features and bulletproofing, as well as the scalability offered by actors and the JVM.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Gearman?
    What companies use Kestrel?
    Manage your open source components, licenses, and vulnerabilities
    Learn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Gearman?
    What tools integrate with Kestrel?
      No integrations found
      What are some alternatives to Gearman and Kestrel?
      RabbitMQ
      RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
      Kafka
      Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.
      Celery
      Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.
      Redis
      Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes, and streams.
      Beanstalkd
      Beanstalks's interface is generic, but was originally designed for reducing the latency of page views in high-volume web applications by running time-consuming tasks asynchronously.
      See all alternatives