StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Utilities
  3. API Tools
  4. Service Discovery
  5. Zookeeper vs etcd

Zookeeper vs etcd

OverviewComparisonAlternatives

Overview

Zookeeper
Zookeeper
Stacks889
Followers1.0K
Votes43
etcd
etcd
Stacks308
Followers412
Votes24

Zookeeper vs etcd: What are the differences?

Zookeeper and etcd are both distributed systems that provide coordination and naming services for distributed applications. Let's explore the key differences between them.

  1. Consistency Model: Zookeeper follows a strong consistency model, ensuring that all clients see the same view of the data at the same time. In contrast, etcd follows a linearizability consistency model, guaranteeing that writes will be seen by all clients in a consistent order.

  2. API: Zookeeper primarily provides a simple hierarchical namespace for storing data, similar to a file system. It offers a limited set of operations such as create, read, update, and delete. On the other hand, etcd provides a key-value store with a richer API, supporting additional features like atomic compare-and-swap operations and watches.

  3. Ecosystem: Zookeeper has been around for longer and has a mature ecosystem with extensive support and integration in various frameworks and applications. Etcd, although younger, has gained popularity and is widely adopted in the container orchestration platform Kubernetes.

  4. Performance: Zookeeper is known for its high throughput and low latency, making it suitable for applications that require fast data updates. Etcd, based on the Raft consensus algorithm, provides comparable performance and is designed to handle large-scale distributed systems.

  5. Language Support: Zookeeper is written in Java and provides official client libraries for Java, C, and Python among others. In contrast, etcd is implemented in Go and provides official client libraries for Go, Python, Java, Ruby, and more, offering a broader range of language support.

  6. Ease of Deployment: Zookeeper requires manual configuration and setting up a quorum of servers for reliability. Etcd, being part of the Kubernetes ecosystem, benefits from its easy deployment and management capabilities, making it simpler to use in Kubernetes clusters.

In summary, Zookeeper offers strong consistency, a simple API, and a mature ecosystem, while etcd provides linearizability, a rich API, and easy integration with Kubernetes. Both are reliable distributed systems suitable for coordination and naming services in distributed applications.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Detailed Comparison

Zookeeper
Zookeeper
etcd
etcd

A centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All of these kinds of services are used in some form or another by distributed applications.

etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. It’s open-source and available on GitHub. etcd gracefully handles master elections during network partitions and will tolerate machine failure, including the master.

Statistics
Stacks
889
Stacks
308
Followers
1.0K
Followers
412
Votes
43
Votes
24
Pros & Cons
Pros
  • 11
    High performance ,easy to generate node specific config
  • 8
    Kafka support
  • 8
    Java
  • 5
    Spring Boot Support
  • 3
    Supports extensive distributed IPC
Pros
  • 11
    Service discovery
  • 6
    Fault tolerant key value store
  • 2
    Bundled with coreos
  • 2
    Secure
  • 1
    Consol integration

What are some alternatives to Zookeeper, etcd?

Consul

Consul

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.

Eureka

Eureka

Eureka is a REST (Representational State Transfer) based service that is primarily used in the AWS cloud for locating services for the purpose of load balancing and failover of middle-tier servers.

Keepalived

Keepalived

The main goal of this project is to provide simple and robust facilities for loadbalancing and high-availability to Linux system and Linux based infrastructures.

SkyDNS

SkyDNS

SkyDNS is a distributed service for announcement and discovery of services. It leverages Raft for high-availability and consensus, and utilizes DNS queries to discover available services. This is done by leveraging SRV records in DNS, with special meaning given to subdomains, priorities and weights (more info here: http://blog.gopheracademy.com/skydns).

SmartStack

SmartStack

Scaling a web infrastructure requires services, and building a service-oriented infrastructure is hard. Make it EASY, with SmartStack’s automated, transparent service discovery and registration: cruise control for your distributed infrastructure.

Serf

Serf

Serf is a service discovery and orchestration tool that is decentralized, highly available, and fault tolerant. Serf runs on every major platform: Linux, Mac OS X, and Windows. It is extremely lightweight: it uses 5 to 10 MB of resident memory and primarily communicates using infrequent UDP messages.

Nacos

Nacos

It is an easy-to-use dynamic service discovery, configuration and service management platform for building cloud native applications.

Libraries.io

Libraries.io

It is an open source web service that lists software development project dependencies and alerts developers to new versions of the software libraries they are using.

ODD Platform

ODD Platform

It is a next-generation data discovery and observability tool for enterprises and startups that help to efficiently democratize data, powers collaboration of data science and data engineering teams, significantly reduces time to data discovery, cuts on data downtime and offers a modern, easy-to-use environment with quick time-to-value. It makes all your data entities reliable, observable, and easily discoverable.

Baker Street

Baker Street

Baker Street is an HAProxy-based client side load balancer that simplifies scaling, testing, and upgrading microservices.

Related Comparisons

GitHub
Bitbucket

Bitbucket vs GitHub vs GitLab

GitHub
Bitbucket

AWS CodeCommit vs Bitbucket vs GitHub

Kubernetes
Rancher

Docker Swarm vs Kubernetes vs Rancher

gulp
Grunt

Grunt vs Webpack vs gulp

Graphite
Kibana

Grafana vs Graphite vs Kibana