Suuchi

Having inspired from tools like Uber's Ringpop and a strong desire to understand how distributed systems work - Suuchi was born.

Suuchi is toolkit to build distributed data systems, that uses gRPC under the hood as the communication medium. The overall goal of this project is to build pluggable components that can be easily composed by the developer to build a data system of desired characteristics.

This project is in beta quality and it's currently running couple of systems in production setting @indix. We welcome all kinds of feedback to help improve the library.

Latest versions

Suuchi Core on Maven Central

Suuchi RocksDB on Maven Central

Suuchi Atomix Cluster on Maven Central

Suuchi Scalecube Cluster on Maven Central

Dependencies

Maven

<dependency>
    <groupId>in.ashwanthkumar</groupId>
    <artifactId>suuchi-core</artifactId>
    <version>${suuchi.version}</version>
</dependency>

SBT

libraryDependencies += "in.ashwanthkumar" % "suuchi-core" % suuchiVersion

Releases are published to Sonatype release repository that eventually gets mirrored to Maven Central.

Development snapshots are available in Sonatypes's snapshot repository.

Features

If you are a developer looking to use Suuchi, head over to Quick Start guide to get started.

Recipes

Internals

We try to document the internal workings of some core pieces of Suuchi for developers interested in contributing or understanding their systems better.

Presentations

Following presentations / videos explain motivation behind Suuchi

License

https://www.apache.org/licenses/LICENSE-2.0