Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Something like Apache Zookeeper with no java?

Is there some library or project out there that works like Zookeeper but has no java dependency? I'm looking at putting this on an embedded linux system, and need minimal footprint... something like a megabyte or less. I have Lua, C and C++ runtimes, and could put something like NewLISP on there if I had to. Most or all of the clients will be C or C++, a nice command line utility for the benefit of shell scripts would also be useful. http://zookeeper.apache.org/

like image 949
Andrew McGregor Avatar asked Sep 30 '11 08:09

Andrew McGregor


People also ask

What has replaced ZooKeeper?

Today that access has been replaced by talking with the brokers instead. The main reason this was done was to reduce the read/write load on the ZooKeeper servers.

What is ZooKeeper in Java?

Apache ZooKeeper is a distributed coordination service which eases the development of distributed applications. It's used by projects like Apache Hadoop, HBase and others for different use cases like leader election, configuration management, node coordination, server lease management, etc.

Is ZooKeeper a database?

ZooKeeper Components shows the high-level components of the ZooKeeper service. With the exception of the request processor, each of the servers that make up the ZooKeeper service replicates its own copy of each of the components. The replicated database is an in-memory database containing the entire data tree.

What is ZooKeeper in Microservices?

ZooKeeper is a distributed, open-source coordination service for distributed applications. It exposes a simple set of primitives that distributed applications can build upon to implement higher level services for synchronization, configuration maintenance, and groups and naming.


2 Answers

There is accord,

Accord is a high-performance coordination service like Apache ZooKeeper

It looks like accord is written in c.

like image 83
sbridges Avatar answered Sep 22 '22 18:09

sbridges


Maybe check out etcd:

etcd

A highly-available key value store for shared configuration and service discovery. etcd is inspired by zookeeper and doozer, with a focus on:

  • Simple: curl'able user facing API (HTTP+JSON)
  • Secure: optional SSL client cert authentication
  • Fast: benchmarked 1000s of writes/s per instance
  • Reliable: Properly distributed using Raft

Etcd is written in go and uses the raft consensus algorithm to manage a highly availably replicated log.

See go-etcd for a native go client. Or feel free to just use curl, as in the examples below.

like image 29
youlq Avatar answered Sep 25 '22 18:09

youlq