4 ms·
This is the smallest possible implementation in terms of TCP connections. Those connections are required for the nodes to communicate, and achieve consensus. Th
by otoolep 10y ago
This is the smallest possible implementation in terms of TCP connections. Those connections are required for the nodes to communicate, and achieve consensus. The HTTP interface is technically optional, but you need some way to interact with the system as a user.
You could probably multiplex the use of the TCP connections to do everything, but that would require even more complexity.
- amelius 10y agoI'd really prefer it if the TCP connections were not in the main code, so people could add their own network protocols. In fact, I think the code should not even call any kernel function. Raft is an algorithm after all.
- otoolep 10y agoYou can add whatever network connection you like (within reason), as the basis of an implementation. All the Hashicorp implementation requires is that it implements a certain interface. Check the docs: https://godoc.org/github.com/hashicorp/raft https://godoc.org/github.com/hashicorp/raft