Containerizing Your Monolith
summary
SoundCloud containerizes a Rails 2 monolith onto Kubernetes, moving from bare metal to a single delivery pipeline and unified infra. The process uses Docker images, sidecar containers for logging/metrics, Passenger with tuned processes, and DNS and graceful-shutdown workarounds; intermittent hacks include Perl templating for nginx and duplicating stdout to files. Result: ~140 pods handling ~25k RPS on‑prem (3k in cloud), better utilization, repeatable deployments, and enough confidence to enable multi‑datacenter rollout and continued microservice extraction. containerized Rails 2 monolith on Kubernetes 140 pods, 25k RPS peak
AI-written summary · about
chapters (11)
- 0:00Start
- 0:06Containerizing your monolith
- 0:38Introduction
- 3:54Our migration to microservices
- 18:05Congrats, your monolith is a microservice now
- 19:10The first milestone
- 20:22The proof of concept
- 26:46Productionizing Public API
- 28:07Productionizing Internal API
- 32:36Current status
- 33:37Conclusions
related talks
44mMigrating a Monolith to Kubernetes
26mMonolith-ifying perfectly good microservices
24mMicroservices in Practice
43mServer Infrastructure for Rails in 2016
30mMonolith-ifying perfectly good microservices
27mScaling a Rails Monolith w/Event Driven Microservices
48mFrom Monolith to Micro-services with Kubernetes
41mDeconstructing the Monolith
