├── .gitignore ├── LICENSE ├── README.md ├── client ├── alpha.go ├── feedback_server.go └── user_client.go ├── proto ├── client │ ├── client.pb.go │ └── client.proto └── server │ ├── server.pb.go │ └── server.proto ├── sctripts └── refresh_proto.sh ├── server ├── alpha.go ├── bftraft.go ├── clients.go ├── config.go ├── consensus.go ├── conshash.go ├── group.go ├── hosts.go ├── log_entries.go ├── membership.go ├── observer.go ├── peers.go ├── server_test.go ├── store.go ├── time_wheel.go └── vote.go ├── test ├── server1.json ├── server2.json ├── server3.json ├── server4.json ├── server5.json ├── server6.json ├── server7.json └── testserver.go └── utils ├── alpha.go ├── conns.go ├── consensus.go ├── encoding.go ├── rpcs.go ├── shares.go ├── signature.go └── utils_test.go /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # BFTRaft.go 2 | Byzantine fault tolerance raft state machine 3 | -------------------------------------------------------------------------------- /client/alpha.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/client/alpha.go -------------------------------------------------------------------------------- /client/feedback_server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/client/feedback_server.go -------------------------------------------------------------------------------- /client/user_client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/client/user_client.go -------------------------------------------------------------------------------- /proto/client/client.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/proto/client/client.pb.go -------------------------------------------------------------------------------- /proto/client/client.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/proto/client/client.proto -------------------------------------------------------------------------------- /proto/server/server.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/proto/server/server.pb.go -------------------------------------------------------------------------------- /proto/server/server.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/proto/server/server.proto -------------------------------------------------------------------------------- /sctripts/refresh_proto.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/sctripts/refresh_proto.sh -------------------------------------------------------------------------------- /server/alpha.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/alpha.go -------------------------------------------------------------------------------- /server/bftraft.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/bftraft.go -------------------------------------------------------------------------------- /server/clients.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/clients.go -------------------------------------------------------------------------------- /server/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/config.go -------------------------------------------------------------------------------- /server/consensus.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/consensus.go -------------------------------------------------------------------------------- /server/conshash.go: -------------------------------------------------------------------------------- 1 | package server 2 | -------------------------------------------------------------------------------- /server/group.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/group.go -------------------------------------------------------------------------------- /server/hosts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/hosts.go -------------------------------------------------------------------------------- /server/log_entries.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/log_entries.go -------------------------------------------------------------------------------- /server/membership.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/membership.go -------------------------------------------------------------------------------- /server/observer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/observer.go -------------------------------------------------------------------------------- /server/peers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/peers.go -------------------------------------------------------------------------------- /server/server_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/server_test.go -------------------------------------------------------------------------------- /server/store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/store.go -------------------------------------------------------------------------------- /server/time_wheel.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/time_wheel.go -------------------------------------------------------------------------------- /server/vote.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/server/vote.go -------------------------------------------------------------------------------- /test/server1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server1.json -------------------------------------------------------------------------------- /test/server2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server2.json -------------------------------------------------------------------------------- /test/server3.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server3.json -------------------------------------------------------------------------------- /test/server4.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server4.json -------------------------------------------------------------------------------- /test/server5.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server5.json -------------------------------------------------------------------------------- /test/server6.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server6.json -------------------------------------------------------------------------------- /test/server7.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/server7.json -------------------------------------------------------------------------------- /test/testserver.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/test/testserver.go -------------------------------------------------------------------------------- /utils/alpha.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/alpha.go -------------------------------------------------------------------------------- /utils/conns.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/conns.go -------------------------------------------------------------------------------- /utils/consensus.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/consensus.go -------------------------------------------------------------------------------- /utils/encoding.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/encoding.go -------------------------------------------------------------------------------- /utils/rpcs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/rpcs.go -------------------------------------------------------------------------------- /utils/shares.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/shares.go -------------------------------------------------------------------------------- /utils/signature.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/signature.go -------------------------------------------------------------------------------- /utils/utils_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PomeloCloud/BFTRaft4go/HEAD/utils/utils_test.go --------------------------------------------------------------------------------