RAFT實現來自Cornerstone項目,這是一個非常輕巧的C ++實現,最初由Andy Chen撰寫。
已經添加了原始論文中未描述的新功能,但已添加了eBay中現實世界中用例所需的新功能。我們認為這些功能也對eBay以外的其他功能也很有用。
cmake和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進入項目目錄。 C: N uRaft > git clone https://github.com/chriskohlhoff/asio -b asio-1-24-0$ mkdir build
$ cd build
build$ cmake ../
build$ make運行單元測試
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您可能需要在build目錄中首先運行vcvars腳本。例如(這取決於您如何安裝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.bat請參考此文檔。
請參閱示例。
請參考測試/台。
快速基準結果
我們歡迎捐款。如果您發現任何錯誤,潛在的缺陷和邊緣案例,改進,新功能建議或討論,請提交問題或提取請求。
版權所有2017年至今的eBay Inc.
作者/開發人員:Jung-Sang Ahn
根據Apache許可證(版本2.0(“許可”)獲得許可;除了符合許可外,您不得使用此文件。您可以在
https://www.apache.org/licenses/license-2.0
除非適用法律要求或以書面形式同意,否則根據許可證分配的軟件是按照“原樣”分發的,沒有任何明示或暗示的保證或條件。請參閱許可證,以獲取執行許可條款和限制的特定語言。
URL:https://github.com/datatechnology/cornerstone
許可證:https://github.com/datatechnology/cornerstone/blob/master/license
最初由Apache 2.0許可證獲得許可。
URL:https://github.com/stbrumme/crc32
原始版權2011-2016 Stephan Brumme
請參閱原始ZLIB許可證:https://github.com/stbrumme/crc32/blob/master/license
URL:https://github.com/greensky00/simple_logger
許可證:https://github.com/greensky00/simple_logger/blob/master/license
最初由MIT許可獲得許可。
URL:https://github.com/greensky00/testsuite
許可證:https://github.com/greensky00/testsuite/blob/master/license
最初由MIT許可獲得許可。
URL:https://github.com/greensky00/latency-collector
許可證:https://github.com/greensky00/latency-collector/blob/master/license
最初由MIT許可獲得許可。
URL:https://github.com/eriwen/lcov-to-cobertura-xml/blob/master/lcov_cobertura/lcov_cobertura.py
許可證:https://github.com/eriwen/lcov-to-cobertura-xml/blob/master/license
版權2011-2012 Eric Wendelin
最初由Apache 2.0許可證獲得許可。
URL:https://github.com/bilke/cmake-modules
許可證:https://github.com/bilke/cmake-modules/blob/master/license_1_0.txt
版權2012-2017 Lars Bilke
最初根據BSD許可獲得許可。