How to fail at building a reactive information system? — MNT postmortem
summary
An account of rebuilding a reactive information system for 1.1 million users using Scala, Akka, Kafka, Play and MongoDB plus a DevOps pipeline and automated tests. It explains implementing a JDBC listener on legacy databases to emit events, adding Kafka topics and a replica database, and running an event store for tracing. A concrete result: bulk health-payment migration time fell from ~8 days to under 7 hours, with the stack in production since May 2017 and ongoing refactoring.
AI-written summary · about
chapters (11)
- 0:00Start
- 4:18A very competitive market!
- 7:44A startup supported by Zengularity
- 8:28A first version that lays the foundations...
- 10:35A first step...
- 16:27A second step...
- 19:54We could have avoided a Big Bang switch!
- 22:20Memo for the future: trace all events!
- 24:47A performance balance to find!
- 28:42Setting up a complete software factory
- 29:47The Middle Office expands through other projects
related talks
55mExperience report on using Akka in production: pitfalls and rewards
39mArchitectural design patterns applied to Distributed Systems
54mReacting to an Event-Driven World
01h 00mReacting to an Event-Driven World
40mDecomposing a live application with confidence
30mReacting to the future of application architecture
41mReducing Microservice Complexity with Kafka and Reactive Streams
44mLong-lived microservices
