Skip to content

Latest commit

 

History

History
40 lines (32 loc) · 1.28 KB

ADR001 - use Microservice Architecture.md

File metadata and controls

40 lines (32 loc) · 1.28 KB
status date deciders
proposed
2023-09-14
Idealos

Use Microservices Architecture

Context and Problem Statement

Raod Warrior is the next gen travel management dashboard. We need to build it following an architectural style that maximises our success chances by meeting all functional and quality requirements with acceptable tradeofs.

Decision Drivers

  • System must scale to accomodate 15 million users and 2 million active monthly users.
  • System must process updates within 5 minutes from notification
  • Five minutes of unplanned downtime per month (99.99% availability)
  • Rich user experience
  • Web and mobile support
  • Extensive analytics
  • No missed updates
  • Fast time to market and rapid iteration speed

Considered Options

  • Layered architecture
  • N Tiers
  • Modular Monolith
  • Microkernel
  • Microservices

Decision Outcome

Chosen option: Microservices and Event Carried State Transfer where needed. Because:

  • Different scalbility requirements for different parts of the system
  • Different security and compliance requirements for different parts of the system
  • Emphasize on short time to market and rapid iteration
  • Strict uptime requirements
  • Ability to prallelise work
  • Ability to limit faults' blast radius