Back to the future - how we integrated a 40 year old software system
summary
Deutsche Bahn integrates a 1983 COBOL seat-reservation system (EPA on HP NonStop) into a new sales platform of 100+ microservices by 2017–23, using an adapter pattern to isolate EPA specifics, NGINX for rate limiting with persistent TLS keep‑alives, WireMock standalone with custom transformers to decode hex binary messages, and a homemade transaction scavenger to repeatedly compensate failed cancellations. Load tests hit >2,000 rps, EPA responses spike to 32s so an external cache prevents mass 429s, and production integration succeeds while EPA retirement is planned for 2025/26.
AI-written summary · about
chapters (16)
- 0:00Introduction
- 1:32History
- 4:20The downfall
- 8:13Core features
- 11:07Architecture
- 17:45Load limitation
- 23:02Engine X
- 24:37Distributed transactions
- 27:46The story so far
- 28:22The fatsoic lexicon
- 29:13Details matter
- 30:36Making a reservation
- 33:33Testing
- 34:53Learnings
- 39:01Future proof
- 40:15Advice
related talks
38mBuilding a high performing Passenger Information System
29mTaming the Hybrid Beast with DevOps
43mBack to the Future
55mModernizing Legacy Code - While Not Bringing Down Prod
58mLegacy modernization made practical: A live coding example of modernization patterns
43mOld code doesn't stink - Refactor or Rewrite
01h 35mRedesigning Legacy Systems - Keys to Success / Lessons Learned
45mDesigning, building, testing and deploying microservices
