Implementasi RAFT yang berasal dari proyek Cornerstone, yang merupakan implementasi C ++ yang sangat ringan dengan dependensi minimum, yang awalnya ditulis oleh Andy Chen.
Fitur baru yang tidak dijelaskan dalam makalah asli, tetapi diperlukan untuk kasus penggunaan dunia nyata di eBay, telah ditambahkan. Kami percaya fitur -fitur itu berguna untuk orang lain di luar eBay juga.
cmake dan openssl :$ sudo apt-get install cmake openssl libssl-dev libz-dev$ brew install cmake
$ brew install openssl$ git submodule update --init$ ./prepare.shasio-1-24-0 ke direktori proyek. C: N uRaft > git clone https://github.com/chriskohlhoff/asio -b asio-1-24-0$ mkdir build
$ cd build
build$ cmake ../
build$ makeJalankan tes unit
build$ ./runtests.shC: N uRaft > mkdir build
C: N uRaft > cd build
C: N uRaft b uild > cmake -G " NMake Makefiles " ..
C: N uRaft b uild > nmake Anda mungkin perlu menjalankan skrip vcvars terlebih dahulu di direktori build Anda. Misalnya (tergantung pada bagaimana Anda menginstal MSVC):
C: N uRaft b uild > c: P rogram Files (x86) M icrosoft Visual Studio 2 019 C ommunity V C A uxiliary B uild v cvars64.batSilakan merujuk ke dokumen ini.
Silakan merujuk ke contoh.
Silakan merujuk ke tes/bangku.
Hasil benchmark cepat
Kami menyambut kontribusi. Jika Anda menemukan bug, kelemahan potensial dan kasus tepi, perbaikan, saran atau diskusi fitur baru, silakan kirimkan masalah atau tarik permintaan.
Hak Cipta 2017-sekarang Ebay Inc.
Penulis/Pengembang: Jung-Sang Ahn
Berlisensi di bawah lisensi Apache, versi 2.0 ("lisensi"); Anda tidak boleh menggunakan file ini kecuali sesuai dengan lisensi. Anda dapat memperoleh salinan lisensi di
https://www.apache.org/licenses/license-2.0
Kecuali diharuskan oleh hukum yang berlaku atau disepakati secara tertulis, perangkat lunak yang didistribusikan di bawah lisensi didistribusikan berdasarkan "sebagaimana adanya", tanpa jaminan atau ketentuan dalam bentuk apa pun, baik tersurat maupun tersirat. Lihat lisensi untuk bahasa spesifik yang mengatur izin dan batasan di bawah lisensi.
URL: https://github.com/datatechnology/cornerstone
Lisensi: https://github.com/datatechnology/cornerstone/blob/master/license
Awalnya dilisensikan di bawah lisensi Apache 2.0.
URL: https://github.com/stbrumme/crc32
Hak Cipta Asli 2011-2016 Stephan Brumme
Lihat Lisensi Zlib Asli: https://github.com/stbrumme/crc32/blob/master/license
URL: https://github.com/greensky00/simple_logger
Lisensi: https://github.com/greensky00/simple_logger/blob/master/license
Awalnya dilisensikan di bawah lisensi MIT.
URL: https://github.com/greensky00/testsuite
Lisensi: https://github.com/greensky00/testsuite/blob/master/license
Awalnya dilisensikan di bawah lisensi MIT.
URL: https://github.com/greensky00/latency-collector
Lisensi: https://github.com/greensky00/latency-collector/blob/master/license
Awalnya dilisensikan di bawah lisensi MIT.
URL: https://github.com/eriwen/lcov-to-cobertura-xml/blob/master/lcov_cobertura/lcov_cobertura.py
Lisensi: https://github.com/eriwen/lcov-to-cobertura-xml/blob/master/license
Hak Cipta 2011-2012 Eric Wendelin
Awalnya dilisensikan di bawah lisensi Apache 2.0.
URL: https://github.com/bilke/cmake-modules
Lisensi: https://github.com/bilke/cmake-modules/blob/master/license_1_0.txt
Hak Cipta 2012-2017 Lars Bilke
Awalnya dilisensikan di bawah lisensi BSD.