Skip to content

morristai/distributed-systems-challenges-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Distributed Systems Challenges by Fly.io

Setup Maelstrom

sudo apt install -y openjdk graphviz gnuplot

xh --download https://github.com/jepsen-io/maelstrom/releases/download/v0.2.4/maelstrom.tar.bz2
tar xvjf maelstrom.tar.bz2
chmod +x maelstrom/maelstrom

Run Challenges

cd challenge-x
cargo build --release

# 1. Echo
../maelstrom/maelstrom test -w echo --bin ./target/release/challenge-1-echo --node-count 1 --time-limit 10 --log-stderr
# 2. Unique-id
../maelstrom/maelstrom test -w unique-ids --bin ./target/release/challenge-2-unique-id --time-limit 30 --rate 1000 --node-count 3 --availability total --nemesis partition
# 3a. Broadcast
../maelstrom/maelstrom test -w broadcast --bin ./target/release/challenge-3-broadcast --node-count 1 --time-limit 20 --rate 10
# 3b. Multi-Node Broadcast
../maelstrom/maelstrom test -w broadcast --bin ./target/release/challenge-3-broadcast --node-count 5 --time-limit 20 --rate 10
# 3c. FIXME: Fault Tolerant Broadcast
../maelstrom/maelstrom test -w broadcast --bin ./target/release/challenge-3-broadcast --node-count 5 --time-limit 20 --rate 10 --nemesis partition
# 3d. Efficient Broadcast, Part I & Part II
../maelstrom/maelstrom test -w broadcast --bin ./target/release/challenge-3-broadcast --node-count 25 --time-limit 20 --rate 100 --latency 100

WaitGroup in Rust

About

fly.io distributed challenges in Rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages