[code review] github.com/golang/groupcache
Details
We read and review https://github.com/golang/groupcache
This is part 2, in part 1 we reviewed its components:
- consistenthash: an implementation of a ring hash
- lru: implements an Least Recently Used cache
- singleflight: a duplicate function call suppression mechanism
In the first 20 minutes, I will present the 3 components (consistenthash, lru, and singleflight) so that we can focus on the architecture of the whole library.
Together, we’ll:
- Read and understand the code
- Discuss the architectural decisions/its design
- Write some Architecture Decision Records (ADRs)
- Draw a class diagram and a C4 diargram
- Decide what testing strategy the repo should have
- Discuss pros and cons of the current implementation
It’s a great way to sharpen your architecture skills and see how others design and structure their systems.
No prep needed — just bring your curiosity and your intuition.
Related topics
Software Architecture
Software Craftsmanship
Software Engineering
