Skip to content

A raft-based java library for building high-available, high-durable, strong-consistent commitlog.

License

Notifications You must be signed in to change notification settings

dongeforever/openmessaging-storage-dledger

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

Build Status Coverage Status License

A raft-based java library for building high-available, high-durable, strong-consistent commitlog, which could act as the persistent layer for distributed storage system, i.e. messaging, streaming, kv, db, etc.

It introduces only two major apis:

  • append(data)
  • get(index)

Here is a Chinese introduction.

Quick Start

Prerequisite

  • 64bit JDK 1.8+;
  • Maven 3.2.x

Build

mvn clean install -DskipTests

Run Command Line

## Get Command Usage
java -jar target/DLedger.jar

## Start DLedger Server
nohup java -jar target/DLedger.jar server &

## Append Data to DLedger
java -jar target/DLedger.jar append -d "Hello World"

## Get Data from DLedger
java -jar target/DLedger.jar get -i 0

RoadMap

  • Preferred Leader Election
  • Manually Configured Leader
  • Automatically Degenerated to Master Slave Architecture
  • Jepsen Integration

Contributing

We always welcome new contributions, whether for trivial cleanups, big new features or other material rewards.

About

A raft-based java library for building high-available, high-durable, strong-consistent commitlog.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 100.0%