- Deliverable
- Required spec
See test suites under /classroom
- Bonus: Student giving wrong answer
- Bonus: Spawn quizzes as independent processes
-
Deliverable
-
Required spec
See test suites under /quorum for finished specs
- Leader election
- KeepAlive mechanism
- Pluggable quorum mechanism
- Eviction behavior
- Re-elect leader behavior
- Extract domain-specific (quorum) behaviors from usecase
-
Bonus: Different quorum mechanism
- Deliverable
# under project root directory
$ go version
# go version go1.22.1
$ go build -C classroom -o ../bin
$ .bin/classroom
$ go run -race classroom/main.go
$ go run -race quorum/main.go
# under project root directory
$ ginkgo ./...
- Extract actor behaviors as a general-purpose package
- Use pub-sub pattern in inter-process communications
- Leverage channels with defined message struct to reduce channels needed in goroutines' params
N/A.
N/A.