Modern Application Development - eBook (EN)

Modern Applications: Microservices architectures

Issue link: https://read.uberflip.com/i/1301002

Contents of this Issue

Navigation

Page 2 of 2

Microservices for modern applications Microservices help your organization improve application resiliency and optimize team productivity. As a result, development teams are able to experiment and innovate faster, to release the products and features that deliver a competitive advantage. Where to start Adopting microservices architectural patterns doesn't have to be an all-or-nothing endeavor. There are two common paths to a service oriented architecture: (a) wrapping the existing monolith in APIs and treating it as a black box while building net new functionality as Modern Applications: Microservices architectures Visit us to learn more about the potential of microservices in your business. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. microservices; (b) refactoring the monolith to microservices using the strangler pattern. Both avenues have benefits and downsides, but whichever path you choose it will require first setting up the appropriate development infrastructure. This includes building automated software delivery pipelines to independently build, test, and deploy executable services and the infrastructure to secure, monitor, operate, and debug a distributed system. Keeping the monolith as is can work if it's a standalone system that won't require updates to its core functionality. In this case, most new development effort can go to building new microservices that simply connect to the monolith through APIs. If the monolith can't be maintained or thrown away but some of its parts need to be rewritten, using the strangler pattern is the best approach. With the strangler pattern, development teams carve out functionality that is fairly decoupled from the monolith already. This functionality is decoupled from the monolith behind an API for easy replacement and decommissioning once the microservice is built. This means capabilities that don't require changes to many client facing apps and potentially don't need their own data store are ideal first candidates. In an e-commerce application, for example, a few potential services to consider are authentication, invoicing, or customer profiles. When carving out their first few microservices, most teams aim to test and optimize their software delivery pipelines, API approaches, and upskill team members, rather that optimizing for functionality.

Articles in this issue

Links on this page

view archives of Modern Application Development - eBook (EN) - Modern Applications: Microservices architectures