GithubHelp home page GithubHelp logo

isabella232 / dledger Goto Github PK

View Code? Open in Web Editor NEW

This project forked from openmessaging/dledger

0.0 0.0 0.0 561 KB

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

License: Apache License 2.0

Java 100.00%

dledger's Introduction

Introduction

Build Status Maven Central 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.

Dledger has added many new features that are not described in the original paper. It has been proven to be a true production ready product.

Features

  • Leader election
  • Preferred leader election
  • Pre-vote protocol
  • High performance, high reliable storage support
  • Parallel log replication between leader and followers
  • Asynchronous replication
  • State machine
  • High tolerance of symmetric network partition
  • High tolerance of asymmetric network partition
  • Jepsen verification with fault injection

New features waiting to be added

  • Snapshot
  • Multi-Raft
  • Dynamic membership & configuration change
  • SSL/TLS support

Quick Start

Prerequisite

  • 64bit JDK 1.8+

  • Maven 3.2.x

How to Build

mvn clean install -DskipTests

Run Command Line

  • Get Command Usage
java -jar command/target/DLedger.jar

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

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

  • Get Data from DLedger

java -jar command/target/DLedger.jar get -i 0

Contributing

We always welcome new contributions, whether for trivial cleanups, big new features. We are always interested in adding new contributors. What we look for are series of contributions, good taste and ongoing interest in the project. If you are interested in becoming a committer, please let one of the existing committers know and they can help you walk through the process.

License

Apache License, Version 2.0 Copyright (C) Apache Software Foundation

FOSSA Status

dledger's People

Contributors

dongeforever avatar rongtongjin avatar vongosling avatar jason918 avatar mxsm avatar duhenglucky avatar terrellchen avatar git-yang avatar tsunghanjacktsai avatar ther1sing3un avatar shannonding avatar hzh0425 avatar lizhanhui avatar yuz10 avatar rushsky518 avatar goodboy008 avatar cserwen avatar waveszh avatar xiaoyipeng avatar cczzzz avatar lvchenhui avatar wanglunhui2012 avatar lifepuzzlefun avatar dependabot[bot] avatar husterxsp avatar llilll avatar shibd avatar yewenhai-github avatar odbozhou avatar trekkidefi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.