文件名称:libraft:hashicorpraft 的 C 接口
文件大小:55KB
文件格式:ZIP
更新时间:2024-07-16 09:30:56
C++
图书馆 该库为 Hashicorp 的分布式系统共识算法的提供了一个 C 接口。 接口的另一个组件是 Go 包 ,它链接到这个库并由这个 Makefile 构建。 注意:libraft 仍处于开发阶段,此时不应在生产中使用。 API 肯定会发生重大变化,该项目也可能使用更好的名称。 基本原理 可在 Go 或 JVM 之外使用的生产级 Raft 实现似乎供不应求。 这将 Raft 呈现为一个带有简单 API 的 C 库,以弥补这一差距。 在内部,Raft 实现在子进程中运行,通过共享内存进行通信以最小化内存副本和开销。 要求 C++11编译器; 使用 Clang 3.5 和 GCC 4.8 进行测试 Go 1.4(可能是其他版本) Linux 或 Mac OS X; 未在其他 Unix 平台上测试 安装 如果您没有设置 Go,请先设置。 然后将GOPATH环境变量设置为指向它,并将$GO
【文件预览】:
libraft-master
----raft_shm.cc(15KB)
----.gitignore(103B)
----raft_shm_test.cc(280B)
----README.md(3KB)
----config.cc(3KB)
----.gitmodules(185B)
----googletest()
----zlog.conf(116B)
----make_unique.h(380B)
----raft_c_if.cc(16KB)
----zlog()
----stats.h(551B)
----Vagrantfile(5KB)
----config.h(450B)
----LICENSE(26KB)
----test.cc(13KB)
----raft_api_calls.h(692B)
----raft_client.c(10KB)
----zlog_verbose.conf(117B)
----raft_if.h(5KB)
----raft_fsm_calls.h(171B)
----stats.cc(55B)
----raft_defs.h(2KB)
----raft_shm.h(11KB)
----Makefile(3KB)
----zserge-jsmn()
--------README.md(5KB)
--------jsmn_test.c(16KB)
--------jsmn.c(8KB)
--------LICENSE(1KB)
--------.hg_archival.txt(148B)
--------jsmn.h(2KB)
--------example()
--------Makefile(590B)
----queue.h(4KB)