Explainers
Step-through diagrams that show how the main ubgo libraries work, each based on that library's README.
- Cache stampede protection with Remember
When many goroutines miss the same key at once, Remember runs your loader one time and hands the result to all of them.
cache 6 steps Open → - Refresh-ahead and stale values in Remember
Follow one cache entry through its life and see what Remember returns, and what it refreshes in the background, at each point.
cache 7 steps Open → - Phased graceful shutdown
When the stop signal arrives, shutdown runs your cleanup hooks phase by phase, in parallel inside each phase, within a fixed time budget.
shutdown 9 steps Open → - Fencing tokens stop stale writes
A process that paused while holding a lock can wake up and write old data; a fencing token lets the storage refuse that write.
lock 7 steps Open → - Debug logs only when something breaks
FingersCrossed holds each request's debug lines back and writes them only if that request logs an error.
logger 7 steps Open → - Typed columns: mistakes fail the build
In sqlb every column has a Go type, so comparing, scanning or joining it the wrong way stops go build instead of failing in production.
sqlb 8 steps Open →