From Service to Platform- A Ranking System in Go
summary
An experimental livestream-ranking service becomes a reusable platform by modeling every step as a Stage implemented in Go with a single method interface backed by protobuf/gRPC. Pipelines are acyclic graphs using series and parallel stages; parallel execution uses context, copies of the request and an error group to manage goroutines and merge responses. Built-in middlewares enable per-stage monitoring middleware, structured error logging and dynamic feature flags so pipelines can be toggled, diagnosed, and extended without touching core runtime.
AI-written summary · about
chapters (11)
- 0:00Start
- 0:41Once upon a time...
- 6:45What is a ranking (recommendation) system?
- 7:50Example: Ranking Service
- 28:37Applying the Four Principles
- 31:46Functions Implementing Interfaces
- 31:59Anonymous Interface Implementations
- 33:55Middleware: Log
- 35:06Middleware: Feature Flags for Incident Mitigation
- 36:58Platform Building is a Discourse
- 40:51Summary
related talks
30mFrom Service To Platform: A Ranking System in Go
28mManaging and Scaling Real Time Data Pipelines using Go
37mPatterns for Scalable Web Services in Go
31mBuilding a microservices architecture with Go
24m"Building Scalable Microservices with Go"
19mService Weaver: A Framework for Writing Distributed Systems
31mSuccessful Go for microservices architecture
59mPipeline-oriented programming
