Monolith-ifying perfectly good microservices
summary
Intercom reimplements standalone services back into a single Ruby on Rails monolith and reports clear wins: moved webhooks from Java into Rails, 2.5 million lines of Rails with 60% tests, runs ~100k processes and about 150k web requests/sec at peak, deploys every five minutes, and runs 100k tests in under five minutes. Tools used include AWS, Aurora, DynamoDB, Honeycomb, SQS and dependabot; outcomes are better observability, simpler ops, easier team rotation and successful longterm stability.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:03Monoliths become problematic
- 5:56Intercom’s architecture journey
- 7:40Early scaling challenges
- 9:44Extracting services from monolith
- 13:20Rails monolith maturity
- 15:29Microservices unintended downsides
- 17:37Run less software
- 21:15Monolithifying web hooks
- 23:41Unified monolith benefits
- 25:48Key lessons
related talks
30mMonolith-ifying perfectly good microservices
21mTaming Monoliths Without Microservices
27mScaling a Rails Monolith w/Event Driven Microservices
39mTaming Monoliths Without Microservices
40mMonoliths Between Microservices
27mFrom multiple apps to Monolith
28mBringing Your Rails Monolith Along As The Business Grows
43mThe history of a Rails monolith
