~/talk

How Rome2Rio split up their monolith and moved to the cloud

Talkat NDC Melbourne 2025 · 2025-04-29..05-01· [microservices]
slides:none on file

Rome2Rio splits a monolith and mono-repo while converting .NET Framework to .NET Core/8/9, migrates to GCP and runs services on Kubernetes (Windows containers for leftover .NET Framework). A single new service handled 2M sessions/day, mirrored 1% of production traffic via Envoy, and gained ~10–20% speed from .NET Core. Teams add retries, circuit breakers, async throughout, fix thread starvation and GC pauses (3–5s), normalize DTOs, switch to Protobuff, and use DataDog for observability. Continuous delivery replaces daily manual releases.

AI-written summary · about

  1. 0:00Split monolith for cloud move
  2. 1:50Decoupling strategy
  3. 3:15Code move .NET Framework to .NET Standard
  4. 7:51Sever dependencies
  5. 11:21Split business logic
  6. 15:42Code to API endpoints
  7. 16:26API call challenges
  8. 18:12DTO bandwidth issues
  9. 20:20HTTP failures and retries
  10. 22:48Async thread starvation
  11. 24:33.NET migration challenges
  12. 27:00Deploy to Kubernetes and GCP
  13. 29:48Test with mirrored traffic
  14. 31:32Performance improvements
  15. 34:27Remove remaining monolith
  16. 36:37Migration outcomes
  17. 37:19Continuous delivery
  18. 39:49Key learnings
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.