A distributed kv-store with adaptive atomic commit protocol supported.
It supports
- 2PC, 3PC, C-PAC, and PRAC ACPs.
- TPC-C, and Micro-benchmark Test.
Firstly, the docker container could be pulled from the DockerHub.
sudo docker pull lawyerphx/racFor cohort node
sudo docker run -dt --name="cohort" --network host lawyerphx/rac
sudo docker exec -i cohort ./bin/rac-server -node=co -preload -addr=$(Your cohort address)For collaborator node
sudo docker run -dt --name="collaborator" --network host lawyerphx/racA simple experiment program could be found in experiment/experiment/py
If you make some change to the code, make sure to rebuild the program:
make buildFor local test, please set the LocalTest in utils\utils.go to True and run:
make localThis would add a 20ms delay to localhost for local test.
For remote test, please update the links in ./configs/remote.json and ./utils/utils.go and run
make expYou can find our raw data log here.