[{"data":1,"prerenderedAt":21},["ShallowReactive",2],{"reinvent2023-API309":3},{"id":4,"title":5,"categories":6,"contributors":9,"cover":10,"description":11,"extension":12,"meta":13,"path":14,"services":15,"sessionId":16,"skillLevel":17,"stem":18,"type":19,"__hash__":20},"reinvent2023\u002Freinvent2023\u002FAPI309.json","Advanced integration patterns and trade-offs for loosely coupled apps",[7,8],"Application Integration","Serverless Compute",null,"\u002Fassets\u002Fimages\u002Freinvent2023\u002FAPI309.jpg","Applications rarely live in isolation: They expose APIs, publish events, call third-party services, and externalize states. They are often distributed with decoupled components as event-driven architectures and microservices come into play. Such applications must be architected for handling the fundamental challenges of integration and distributed systems, such as out-of-order delivery, retries, idempotence, or partial failures. When addressing these challenges, architects typically have various options to choose from. In this session, learn about common architecture decisions, integration challenges, and related trade-offs, illustrated with design patterns and decision trees applied to real-world use cases.","json",{},"\u002Freinvent2023\u002FAPI309",[],"API309","300","reinvent2023\u002FAPI309","Breakout Session","F-Wqq_0fcvogOsMbO-bCs6Ekq4-iSwKfUnX__QGoqfw",1792665336132]