Adventures with Micro Services in Rails
summary
A team breaks a legacy monolith into domain-bound services, ending up with 10 microservices (uploader says 8) plus two apps, each with its own DB, plus cross‑cutting communication and error reporting services. Deployment is automated with puppet solo, CI/CD and client gems so the farm of 25 servers gets one-click deployments under three minutes. Tests include unit, contract and integration checks; logging uses a passed unique id for distributed tracing.
AI-written summary · about
chapters (39)
- 0:00Intro
- 0:56What are microservices
- 1:43What is small
- 2:12What is the right size
- 3:08unix philosophy
- 3:45single responsibility
- 4:18monolithic application
- 4:49why use microservice
- 5:19client history
- 5:57legacy code
- 6:41composable
- 7:43so its product owners
- 8:00for us microservices
- 8:21how did we start
- 9:17social gaming
- 9:40order processing
- 10:25results
- 11:10service has one resource
- 12:04focus on contracts
- 13:36avoid coupling
- 13:46logging
- 14:30communication
- 15:23scheduling
- 15:46error reporting
- 16:03service explosion
- 16:30Rails API
- 17:09Client Jump
- 17:43Small Changes
- 17:57Simple Test
- 18:21Unit Test
- 18:39Contract Test
- 19:14Integration Test
- 20:10Building Micro Services
- 20:44Infrastructure
- 21:32Integration Pipeline
- 22:32Shipping
- 23:15Cost
- 23:43When
- 25:43Questions
related talks
27mScaling a Rails Monolith w/Event Driven Microservices
30mMonolith-ifying perfectly good microservices
56mFrom Homogeneous Monolith to Heterogeneous Microservices Architecture
35mMicroservices: A Tale of 3 Heroes
33mServices and Rails: The Shit They Don't Tell You
43mBreak Up the Monolith: Testing Microservices
33mServices and Rails: The Sh*t They Don't Tell You
52mMicroservices: A Utopian Mystery
