Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

apidays LIVE Paris - Break up Monoliths and lay them to REST! by Arun Narayanaswamy

819 views

Published on

apidays LIVE Paris - Responding to the New Normal with APIs for Business, People and Society
December 8, 9 & 10, 2020

Break up Monoliths and lay them to REST!
Arun Narayanaswamy, Director Engineering at Amadeus

Published in: Technology
  • Login to see the comments

apidays LIVE Paris - Break up Monoliths and lay them to REST! by Arun Narayanaswamy

  1. 1. © Amadeus IT Group and its affiliates and subsidiaries Break up Monoliths and lay them to REST API EXPERIENCE
  2. 2. © Amadeus IT Group and its affiliates and subsidiaries PARIS 2020
  3. 3. Arun Narayanaswamy Director - DevOps Platform Engineering A bit about me
  4. 4. © Amadeus IT Group and its affiliates and subsidiaries Amadeus in a few words 4 _ We are the leading technology company dedicated to the global travel industry _ We are present in 190+ countries and employ 17,000+ people worldwide _ Our solutions enrich travel for billions of people every year _ We work together with our customers, partners and other players in the industry to improve business performance and shape the future of travel 7th consecutive year included in the DJSI Recognized as world leader in the Software & Services industry sector in the Dow Jones Sustainability Index in 2018 In world’s top 10 Software companies Forbes 2018 global rankings 1.8+ billion Passengers boarded in 2018 with Amadeus and Navitaire solutions 640+ million Total bookings processed in 2018 using the Amadeus distribution platform Euro Stoxx 50 Entry in 2018 Recognition as one of the largest/ best performing public companies in Europe
  5. 5. © Amadeus IT Group and its affiliates and subsidiaries 55+ 75,000+ Our robust global operations 5 * A transaction is defined as a single message received from a user that requires one or more responses to be sent. A user can be a person or a computer system. ** One petabyte is equal to 1015 bytes of digital information. _ Cutting-edge data center with support across the globe _ World’s largest data processing center dedicated to the travel industry Petabytes** of storage Transactions* per second (at peak) 20 Average net bookings per second
  6. 6. © Amadeus IT Group and its affiliates and subsidiaries 6 MONOLITHS / MAINFRAMES MONOLITHS SOA + API’s MICRO? / MACRO SERVICE - CLOUD Enterprise evolution so far – Internal and External Platform TTY EDIFACT SOAP REST TTY EDIFACT … ?
  7. 7. Defining Monoliths •Application monolith •Joined at the database •Monolithic builds •Monolithic releases •Monolithic thinking
  8. 8. 8 © Amadeus IT Group and its affiliates and subsidiaries Benefits of the monolith _Dev Phase is easy _Potentially easier to test (anti pattern) _Easier to deploy _Easy to scale the instances horizontally (load balanced)
  9. 9. 9 © Amadeus IT Group and its affiliates and subsidiaries Problems of the monolith _No one understands the application entirely _Limited reuse – tightly coupled _Minimal inner sourcing _Scaling monolithic applications (other than Load balancer approach) _Operational agility is difficult _Typically a single development stack
  10. 10. Choosing which one to break? TECHNICAL •Codebase •Suitable framework •Footprint •File system dependencies •Usage / workload BUSINESS •Business criticality •Risk tolerance •Change frequency •Lifecycle stage •Domain expert availability ECONOMIC •Licensing costs (HW / SW) •Time-to-market implications •Revenue impact-fullness
  11. 11. Strangling New features in new model Shrink the monolith •Split Frontend and Backend •Extract services Breaking Build a parallel product 11 { Two } Strategies for defeating the Monolith :: Common Governance model :: Common languages, tools, contracts Smart Routing Dynamic Routing Service Migration Load Shedding Traffic Management Canary Testing Picking Seams Team Organization Business Processes Verbs & Operations Nouns & Resources Models for read/ write
  12. 12. 12 © Amadeus IT Group and its affiliates and subsidiaries { Idealistic } Approach
  13. 13. 13 © Amadeus IT Group and its affiliates and subsidiaries { Case 1 } Monolith to a microservice
  14. 14. _Monolith has all modules/components/UI co- deployed _Identify the seams _Identify hidden coupling _Don’t ignore the DB _Note: • It’s a hard journey! • Organizations will change too! 14 © Amadeus IT Group and its affiliates and subsidiaries {EMBRACE} The Monolith Inspired by Christian Posta blogs
  15. 15. _Detail the seams _Decouple the presentation logic into a remote UI with API access _Start small _Note: • API’s need to be secured and flexible 15 Start with the {Seams}
  16. 16. _Consider macro services _New code with toggles and flags _Increased surface of security _Note: • Vision (of simplifying) is important and so is the target • Flags are complex • API’s need to be secured and flexible 16 Start with the {Seams} – Part 2
  17. 17. _Separate the UI _Every conversation is API based _Initiate inner-sourcing _Note: • Opportunities to run hackathons • Fast track API usage • Limited downtime 17 Start {Small}
  18. 18. _Re-write the monolith _Break the data components _ Focus on the API design _Note: • The old components are still operational in the monolith • Components are work in progress 18 Break the {Monolith}
  19. 19. _Focus on API design _Connect the Data side _Note: • Monolith’s API’s are hard to crack • Work around workarounds 19 Connect the {Dots} & open the {API’s}
  20. 20. _Direct the traffic _Opportunity to test the waters _Canary loads – Segment the traffic _Note: • Double the infra (scale it wisely) • Double the operations • Keep the temporary holes plugged • Works best with new services 20 Start the {Switch}
  21. 21. _Autonomous service _Decouple _Open the API’s further _Note: • Resist the urge to use the monolith • DevOps & Agile are important • Move fast, be nimble 21 Enter the {New World} one-time ETL
  22. 22. 22 { Case 2 } Monolith to a new service (Big Bang!)
  23. 23. { Maturity Model } Pivotal Case Study
  24. 24. Where we are today? _Release 200x faster _API help inner sourcing – Million+ pull requests _API help backward compatibility – Almost zero rollbacks _Architecture comes first • Loosely coupled architecture • DevOps and API first _Trust in automation • Bite-sized and iterative approach
  25. 25. © Amadeus IT Group and its affiliates and subsidiaries Integrated API {Platform} https://developers.amadeus.com
  26. 26. Thank you! linkedin.com/in/arun-n

×