SlideShare a Scribd company logo
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
From Monolith to Microservices
Daniele Stroppa, Solutions Architect, AWS
Ville Takanen, VP Engineering, Digital Goodie
September 18th, 2018
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
2009
48
280
722
82
2011 2013 2015
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
“The Monolith”
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Challenges with monolithic software
Long
Build/Test/Release
Cycles
(who broke the build?)
Operations
is a nightmare
(module X is failing,
who’s the owner?)
Difficult to
scale
New releases
take months
Long time to add
new features
Architecture is hard
to maintain and
evolve
Lack of innovation
Frustrated customers
Lack of agility

Recommended for you

A pattern language for microservices - June 2021
A pattern language for microservices - June 2021 A pattern language for microservices - June 2021
A pattern language for microservices - June 2021

The microservice architecture is growing in popularity. It is an architectural style that structures an application as a set of loosely coupled services that are organized around business capabilities. Its goal is to enable the continuous delivery of large, complex applications. However, the microservice architecture is not a silver bullet and it has some significant drawbacks. The goal of the microservices pattern language is to enable software developers to apply the microservice architecture effectively. It is a collection of patterns that solve architecture, design, development and operational problems. In this talk, I’ll provide an overview of the microservice architecture and describe the motivations for the pattern language. You will learn about the key patterns in the pattern language.

microservicesmicroservice architecturepattern language
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...

( Microservices Architecture Training: https://www.edureka.co/microservices-... ) This Edureka's Microservices tutorial gives you detail of Microservices Architecture and how it is different from Monolithic Architecture. You will understand the concepts using a UBER case study. In this video, you will learn the following: 1. Monolithic Architecture 2. Challenges Of Monolithic Architecture 3. Microservice Architecture 4. Microservice Features 5. Compare architectures using UBER case-study

microservicesonlinetrainingmicroservicesforbeginnersmicroservicearchitecturetutorial
Design patterns for microservice architecture
Design patterns for microservice architectureDesign patterns for microservice architecture
Design patterns for microservice architecture

The presentation from our online webinar "Design patterns for microservice architecture". Full video from webinar available here: https://www.youtube.com/watch?v=826aAmG06KM If you’re a CTO or a Lead Developer and you’re planning to design service-oriented architecture, it’s definitely a webinar tailored to your needs. Adrian Zmenda, our Lead Dev, will explain: - when microservice architecture is a safe bet and what are some good alternatives - what are the pros and cons of the most popular design patterns (API Gateway, Backend for Frontend and more) - how to ensure that the communication between services is done right and what to do in case of connection issues - why we’ve decided to use a monorepo (monolithic repository) - what we’ve learned from using the remote procedure call framework gRPC - how to monitor the efficiency of individual services and whole SOA-based systems.

microservicesnode.jssoftware development
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential“20080219BonMorningDSC_0022B” by Sunphol Sorakul . No alterations other than cropping. https://www.flickr.com/photos/83424882@N00/3483881705/
Image used with permissions under Creative Commons license 2.0, Attribution Generic License (https://creativecommons.org/licenses/by/2.0/)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Monolith development lifecycle
releasetestbuild
Delivery pipeline
App
(aka the“monolith”)Developers
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Too much software coupling
Shared libraries
Shared data
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Evolving towards microservices
“IMG_1760” by Robert Couse-Baker. No alterations other than cropping. https://www.flickr.com/photos/29233640@N07/14859431605/
Image used with permissions under Creative Commons license 2.0, Attribution Generic License (https://creativecommons.org/licenses/by/2.0/)

Recommended for you

Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps

This document provides an overview of microservices architecture, including concepts, characteristics, infrastructure patterns, and software design patterns relevant to microservices. It discusses when microservices should be used versus monolithic architectures, considerations for sizing microservices, and examples of pioneers in microservices implementation like Netflix and Spotify. The document also covers domain-driven design concepts like bounded context that are useful for decomposing monolithic applications into microservices.

microservicesddddomain driven design
Microservices
MicroservicesMicroservices
Microservices

Learn all about microservices from Product Marketing Manager Dan Giordano. We'll cover how to get started, the benefits, potential challenges, and how SmartBear can help.

microservicesmicroservices architectureapis
Microservice architecture design principles
Microservice architecture design principlesMicroservice architecture design principles
Microservice architecture design principles

- Microservices advocate creating a system from small, isolated services that each own their data and are independently scalable and resilient. They are inspired by biological cells that are small, single-purpose, and work together through messaging. - The system is divided using a divide and conquer approach, decomposing it into discrete subsystems that communicate over well-defined protocols. Each microservice focuses on a single business capability and owns its own data and behavior. - Microservices communicate asynchronously through APIs and events to maintain independence and isolation, which enables continuous delivery, failure resilience, and independent scaling of each service.

microservicearchitecture
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
“service-oriented
architecture
composed of
loosely coupled
elements
that have
bounded contexts”
Adrian Cockcroft (former Cloud Architect at Netflix and
Technology Fellow at Battery Ventures, now VP Cloud
Architecture Strategy at AWS)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
“service-oriented
architecture
composed of
loosely coupled
elements
that have
bounded contexts”
Services communicate
with each other over the
network
Adrian Cockcroft (former Cloud Architect at Netflix and
Technology Fellow at Battery Ventures, now VP Cloud
Architecture Strategy at AWS)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
“service-oriented
architecture
composed of
loosely coupled
elements
that have
bounded contexts”
You can update the
services independently;
updating one service
doesn’t require changing
any other services.
Adrian Cockcroft (former Cloud Architect at Netflix and
Technology Fellow at Battery Ventures, now VP Cloud
Architecture Strategy at AWS)

Recommended for you

Microservice intro
Microservice introMicroservice intro
Microservice intro

This document provides an overview of microservices and monolithic architectures. It discusses how monolithic applications are self-contained and execute end-to-end tasks, while microservices are small, independent services that communicate to perform tasks. The document outlines characteristics of each approach and compares their advantages and disadvantages, such as improved scalability, deployment and innovation with microservices versus better performance with monolithic architectures. Examples of companies using microservices are also provided.

monolithicarchitecturemicroservice
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices

Kevin Huang: AWS San Francisco Startup Day, 9/7/17 Architecture: When, how, and if to adopt microservices - Microservices are not for everyone! If you're a small shop, a monolith provides a great amount of value and reduces the complexities involved. However as your company grows, this monolith becomes more difficult to maintain. We’ll look at how microservices allow you to easily deploy and debug atomic pieces of infrastructure which allows for increased velocity in reliable, tested, and consistent deploys. We’ll look into key metrics you can use to identify the right time to begin the transition from monolith to microservices.

awsamazon web servicescloud
Migrating to the Cloud
Migrating to the CloudMigrating to the Cloud
Migrating to the Cloud

AWS offers a variety of data migration services and tools to help you easily and rapidly move everything from gigabytes to petabytes of data. We can provide guidance and methodologies to help you find the right service or tool to fit your requirements, and we share examples of customers who have used these options in their cloud journey.

2019initiatevictoria
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
“service-oriented
architecture
composed of
loosely coupled
elements
that have
bounded contexts” Self-contained; you can
update the code without
knowing anything about
the internals of other
microservices
Adrian Cockcroft (former Cloud Architect at Netflix and
Technology Fellow at Battery Ventures, now VP Cloud
Architecture Strategy at AWS)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Principles of Microservices
1. Rely only on the public API
Ÿ Hide your data
Ÿ Document your APIs
Ÿ Define a versioning strategy
2. Use the right tool for the job
Ÿ Polygot persistence (data layer)
Ÿ Polyglot frameworks (app layer)
3. Secure your services
Ÿ Defense-in-depth
Ÿ Authentication/authorization
6. Automate everything
Ÿ Adopt DevOps
4. Be a good citizen within the ecosystem
Ÿ Have SLAs
Ÿ Distributed monitoring, logging, tracing
5. More than just technology transformation
Ÿ Embrace organizational change
Ÿ Favor small focused dev teams
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Benefits of microservices
Rapid
Build/Test/Release
Cycles
Clear ownership and
accountability
Easier to scale
each individual
micro-service
New releases
take minutes
Short time to add
new features
Easier to
maintain and
evolve system
Faster innovation
Delighted customers
Increased agility
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential

Recommended for you

Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native

This document provides an overview of cloud native concepts including: - Cloud native is defined as applications optimized for modern distributed systems capable of scaling to thousands of nodes. - The pillars of cloud native include devops, continuous delivery, microservices, and containers. - Common use cases for cloud native include development, operations, legacy application refactoring, migration to cloud, and building new microservice applications. - While cloud native adoption is growing, challenges include complexity, cultural changes, lack of training, security concerns, and monitoring difficulties.

cloud nativekubernetes
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices

The introduction covers the following 1. What are Microservices and why should be use this paradigm? 2. 12 factor apps and how Microservices make it easier to create them 3. Characteristics of Microservices Note: Please download the slides to view animations.

javaspring bootsoa
Monolithic architecture
Monolithic architectureMonolithic architecture
Monolithic architecture

This presentation is made by me on Monolithic Architecture. By using this you can understand clear about monolithic architecture.

softwareapplication
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
= 50 million deployments a year
Thousands of teams
× Microservice architecture
× Continuous delivery
× Multiple environments
(5708 per hour, or every 0.63 second)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Challenges of Microservices
1. Distributed System
Ÿ Performance
Ÿ Reliability
2. Eventual Consistency
Ÿ Decentralized data management
3. Operational Complexity
Ÿ Deployments
Ÿ Monitoring
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
For less-complex systems,
the extra baggage required to manage
microservices reduces productivity
As complexity kicks in,
Productivity starts failing rapidly
the decreased coupling
of microservices
reduces the attenuation
of productivity
https://www.martinfowler.com/microservices/#when
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Strangling the Monolith
Database
StoreFront
UI
Browser
Cart
Service
Account
Service
User
Service

Recommended for you

Microservices Architecture & Testing Strategies
Microservices Architecture & Testing StrategiesMicroservices Architecture & Testing Strategies
Microservices Architecture & Testing Strategies

The document discusses Microservices architecture and compares it to monolithic architecture. It covers topics like infrastructure for Microservices including API gateways, service discovery, event buses. It also discusses design principles like domain-driven design, event sourcing and CQRS. Microservices are presented as a better approach as they allow independent deployments, scale independently and use multiple programming languages compared to monolithic applications.

ddddomain driven designmicroservices
The Ideal Approach to Application Modernization; Which Way to the Cloud?
The Ideal Approach to Application Modernization; Which Way to the Cloud?The Ideal Approach to Application Modernization; Which Way to the Cloud?
The Ideal Approach to Application Modernization; Which Way to the Cloud?

Determine your best way to modernize your organization’s applications with Microsoft Azure. Want to know more? Don't hesitate to download our White Paper 'Making the Move to Application Modernization; Your Compass to Cloud Native': http://bit.ly/39XylZp

application modernizationazure paascontainers
Cloud Migration Workshop
Cloud Migration WorkshopCloud Migration Workshop
Cloud Migration Workshop

The document discusses strategies for migrating IT workloads to the cloud. It describes common drivers for cloud migration like cost reduction and agility. Potential barriers are also outlined, such as existing investments and lack of cloud expertise. The main sections of the document are on migration planning, common migration strategies ranging from rehosting to rearchitecting, examples of migration patterns, and modernizing applications on AWS.

cloud-migration-workshop-hk-1029
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
No New Feature on the Monolith
Database
StoreFront
UI
Browser
New
Microservice
New DB
Cart
Service
Account
Service
User
Service
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Anti-Corruption Layer for Integration
ACL
Database
StoreFront
UI
Browser
New
Microservice
New DB
Cart
Service
Account
Service
User
Service
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Cart
Service
Account
Service
Start with a Simple Existing Service…
Database
StoreFront
UI
Browser
User
Microservice
User DB
New
Microservice
New DB
User
Service
Client
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Account
Service
User
Service
Client
…Move on to More Complicated Services
Cart
Microservice
Database
StoreFront
UI
Browser
User
Microservice
User DB
New
Microservice
New DB
ACL
Cart DB
Cart
Service

Recommended for you

Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot

This is a deep journey into the realm of "microservice architecture", and in that I will try to cover each inch of it, but with a fixed tech stack of Java with Spring Cloud. Hence in the end, you will be get know each and every aspect of this distributed design, and will develop an understanding of each and every concern regarding distributed system construct.

microservicemicroservice architecturejava spring cloud
From Monolith to Microservices
From Monolith to MicroservicesFrom Monolith to Microservices
From Monolith to Microservices

Applications built on a microservices-based architecture and packaged as containers bring several benefits to your organization. In this session, AWS highlights potential hurdles, how to plan your migration to microservices, and how to use containers and serverless architecture to manage this journey.

ottawa-summit-2019
From Monolithic to Microservices (AWS & Digital Goodie)
From Monolithic to Microservices (AWS & Digital Goodie)From Monolithic to Microservices (AWS & Digital Goodie)
From Monolithic to Microservices (AWS & Digital Goodie)

In this session, we’ll discuss the benefits of moving from monolithic to micro-services application architectures, and examine where micro-services can be used. We’ll share common transition strategies and relate them to the specifics of e-commerce and retail workloads, using customer examples. You’ll learn how to build micro-services using AWS services, and get a better understanding of the role of data storage, API endpoints and service discovery. Plus, you can learn from the real-life experience of Digital Goodie, an online retailing platform for connected commerce.

retail-talks-2018
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
…Keep Walking and…
Cart
Microservice
Database
StoreFront
UI
Browser
User
Microservice
User DB
New
Microservice
New DB
Account
Microservice
Cart DB Account DB
Account
Service
User
Service
Client
ACL
Cart
Service
ACL
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
…The Monolith is Eventually Gone
Cart
Microservice
StoreFront
UI
Browser
User
Microservice
User DB
New
Microservice
New DB
Account
Microservice
Cart DB Account DB
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Microservices Architecture on AWS
CloudFront API
Gateway
Application
Load Balancer
ECS
EC2
Lambda ElastiCache
RDS
DynamoDB
CloudWatchS3
Static
content
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Digital Goodie
From Monolith to Microservices

Recommended for you

Microservices and Serverless for MegaStartups
Microservices and Serverless for MegaStartupsMicroservices and Serverless for MegaStartups
Microservices and Serverless for MegaStartups

Microservices and Serverless computing allow you to build and run simpler and more efficient applications, while improving your agility and saving a lot of money. The ability to deploy your applications without the need for provisioning or managing servers opens for startups new opportunities to build web, mobile, and IoT backends.

awscloudmicroservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservicesAWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservices

The document discusses adopting a microservices architecture and provides guidance on when and how to transition from a monolithic architecture. It notes that monoliths can work well for simple applications but don't scale as the application and company grow. It then outlines some of the challenges of monolithic architectures including long development cycles and difficulty adding new features. The document introduces microservices as a way to decompose an application into smaller, independent services. It provides examples of microservice anatomy and principles for designing microservices including using appropriate tools, secure service communication, and being considerate within the ecosystem. Finally, it acknowledges that transitioning to microservices is a journey that requires planning and coordination.

microservicescloudamazon web services
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018

Microservices are minimal function services that are deployed separately, but can interact together to function as a broader application. Microservices can be built, changed, and deployed quickly with a relatively small impact, empowering developers to speed up the rate of innovation. In this session, we show how containers help enable microservices-based application architectures, discuss best practices for building new microservices, and cover the AWS services that allow you to build performant microservices applications.

amazonawsreinvent2018containers
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
It’s a journey…
Expect challenges along the way…
• Understanding of business domains
• Coordinating transactions across
multiple services
• Eventual Consistency
• Service discovery
• Lots of moving parts requires
increased coordination
• Complexity of testing / deploying /
operating a distributed system
• Cultural transformation
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
Thank you!
stroppad@amazon.com

More Related Content

What's hot

Introduction To Microservices
Introduction To MicroservicesIntroduction To Microservices
Introduction To Microservices
Lalit Kale
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application Modernisation
Ajay Kumar Uppal
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
Paulo Gandra de Sousa
 
A pattern language for microservices - June 2021
A pattern language for microservices - June 2021 A pattern language for microservices - June 2021
A pattern language for microservices - June 2021
Chris Richardson
 
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Edureka!
 
Design patterns for microservice architecture
Design patterns for microservice architectureDesign patterns for microservice architecture
Design patterns for microservice architecture
The Software House
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
Araf Karsh Hamid
 
Microservices
MicroservicesMicroservices
Microservices
SmartBear
 
Microservice architecture design principles
Microservice architecture design principlesMicroservice architecture design principles
Microservice architecture design principles
Sanjoy Kumar Roy
 
Microservice intro
Microservice introMicroservice intro
Microservice intro
ramesh_sharma
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
Amazon Web Services
 
Migrating to the Cloud
Migrating to the CloudMigrating to the Cloud
Migrating to the Cloud
Amazon Web Services
 
Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
Karthik Gaekwad
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
Anil Allewar
 
Monolithic architecture
Monolithic architectureMonolithic architecture
Monolithic architecture
SRM University Delhi-NCR sonepat
 
Microservices Architecture & Testing Strategies
Microservices Architecture & Testing StrategiesMicroservices Architecture & Testing Strategies
Microservices Architecture & Testing Strategies
Araf Karsh Hamid
 
The Ideal Approach to Application Modernization; Which Way to the Cloud?
The Ideal Approach to Application Modernization; Which Way to the Cloud?The Ideal Approach to Application Modernization; Which Way to the Cloud?
The Ideal Approach to Application Modernization; Which Way to the Cloud?
Codit
 
Cloud Migration Workshop
Cloud Migration WorkshopCloud Migration Workshop
Cloud Migration Workshop
Amazon Web Services
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot
Kashif Ali Siddiqui
 
From Monolith to Microservices
From Monolith to MicroservicesFrom Monolith to Microservices
From Monolith to Microservices
Amazon Web Services
 

What's hot (20)

Introduction To Microservices
Introduction To MicroservicesIntroduction To Microservices
Introduction To Microservices
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application Modernisation
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
A pattern language for microservices - June 2021
A pattern language for microservices - June 2021 A pattern language for microservices - June 2021
A pattern language for microservices - June 2021
 
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...
 
Design patterns for microservice architecture
Design patterns for microservice architectureDesign patterns for microservice architecture
Design patterns for microservice architecture
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 
Microservices
MicroservicesMicroservices
Microservices
 
Microservice architecture design principles
Microservice architecture design principlesMicroservice architecture design principles
Microservice architecture design principles
 
Microservice intro
Microservice introMicroservice intro
Microservice intro
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
Migrating to the Cloud
Migrating to the CloudMigrating to the Cloud
Migrating to the Cloud
 
Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
Monolithic architecture
Monolithic architectureMonolithic architecture
Monolithic architecture
 
Microservices Architecture & Testing Strategies
Microservices Architecture & Testing StrategiesMicroservices Architecture & Testing Strategies
Microservices Architecture & Testing Strategies
 
The Ideal Approach to Application Modernization; Which Way to the Cloud?
The Ideal Approach to Application Modernization; Which Way to the Cloud?The Ideal Approach to Application Modernization; Which Way to the Cloud?
The Ideal Approach to Application Modernization; Which Way to the Cloud?
 
Cloud Migration Workshop
Cloud Migration WorkshopCloud Migration Workshop
Cloud Migration Workshop
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot
 
From Monolith to Microservices
From Monolith to MicroservicesFrom Monolith to Microservices
From Monolith to Microservices
 

Similar to From Monolithic to Microservices

From Monolithic to Microservices (AWS & Digital Goodie)
From Monolithic to Microservices (AWS & Digital Goodie)From Monolithic to Microservices (AWS & Digital Goodie)
From Monolithic to Microservices (AWS & Digital Goodie)
Amazon Web Services
 
Microservices and Serverless for MegaStartups
Microservices and Serverless for MegaStartupsMicroservices and Serverless for MegaStartups
Microservices and Serverless for MegaStartups
Boaz Ziniman
 
AWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservicesAWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS Germany
 
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Amazon Web Services
 
Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...
Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...
Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...
Amazon Web Services
 
DevOps: The Amazon Story
DevOps: The Amazon StoryDevOps: The Amazon Story
DevOps: The Amazon Story
Amazon Web Services
 
[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...
[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...
[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...
Amazon Web Services
 
Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...
Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...
Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...
Amazon Web Services
 
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Amazon Web Services
 
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Amazon Web Services
 
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Amazon Web Services
 
Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...
Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...
Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...
Amazon Web Services
 
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Amazon Web Services
 
Microservices for Startups
Microservices for StartupsMicroservices for Startups
Microservices for Startups
Amazon Web Services
 
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Amazon Web Services
 
Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28
Boaz Ziniman
 
Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28
Amazon Web Services
 
2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...
2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...
2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...
Martin Klie
 
Containers for Startups
Containers for StartupsContainers for Startups
Containers for Startups
Amazon Web Services
 
Accelerate Innovation and Maximize Business Value with Serverless Application...
Accelerate Innovation and Maximize Business Value with Serverless Application...Accelerate Innovation and Maximize Business Value with Serverless Application...
Accelerate Innovation and Maximize Business Value with Serverless Application...
Amazon Web Services
 

Similar to From Monolithic to Microservices (20)

From Monolithic to Microservices (AWS & Digital Goodie)
From Monolithic to Microservices (AWS & Digital Goodie)From Monolithic to Microservices (AWS & Digital Goodie)
From Monolithic to Microservices (AWS & Digital Goodie)
 
Microservices and Serverless for MegaStartups
Microservices and Serverless for MegaStartupsMicroservices and Serverless for MegaStartups
Microservices and Serverless for MegaStartups
 
AWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservicesAWS STARTUP DAY 2018 I If, how and when to adopt microservices
AWS STARTUP DAY 2018 I If, how and when to adopt microservices
 
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
Building Microservices with Containers (CON308-R1) - AWS re:Invent 2018
 
Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...
Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...
Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324) - AWS re:Inven...
 
DevOps: The Amazon Story
DevOps: The Amazon StoryDevOps: The Amazon Story
DevOps: The Amazon Story
 
[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...
[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...
[REPEAT 1] Safeguard the Integrity of Your Code for Fast and Secure Deploymen...
 
Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...
Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...
Safeguard the Integrity of Your Code for Fast and Secure Deployments (DEV349-...
 
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
 
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
 
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
Making Hybrid Work for You: Getting into the Cloud Fast (GPSTEC308) - AWS re:...
 
Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...
Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...
Moving 400 Engineers to AWS: Our Journey to Secure Adoption (SEC306-S) - AWS ...
 
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
 
Microservices for Startups
Microservices for StartupsMicroservices for Startups
Microservices for Startups
 
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
 
Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28Introduction to Serverless computing and AWS Lambda - Floor28
Introduction to Serverless computing and AWS Lambda - Floor28
 
Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28Introduction to Serverless computing and AWS Lambda | AWS Floor28
Introduction to Serverless computing and AWS Lambda | AWS Floor28
 
2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...
2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...
2018 re:Invent - Safeguard the Integrity of Your Code for Fast and Secure Dep...
 
Containers for Startups
Containers for StartupsContainers for Startups
Containers for Startups
 
Accelerate Innovation and Maximize Business Value with Serverless Application...
Accelerate Innovation and Maximize Business Value with Serverless Application...Accelerate Innovation and Maximize Business Value with Serverless Application...
Accelerate Innovation and Maximize Business Value with Serverless Application...
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

From Monolithic to Microservices

  • 1. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential From Monolith to Microservices Daniele Stroppa, Solutions Architect, AWS Ville Takanen, VP Engineering, Digital Goodie September 18th, 2018
  • 2. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential 2009 48 280 722 82 2011 2013 2015
  • 3. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential “The Monolith”
  • 4. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Challenges with monolithic software Long Build/Test/Release Cycles (who broke the build?) Operations is a nightmare (module X is failing, who’s the owner?) Difficult to scale New releases take months Long time to add new features Architecture is hard to maintain and evolve Lack of innovation Frustrated customers Lack of agility
  • 5. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential“20080219BonMorningDSC_0022B” by Sunphol Sorakul . No alterations other than cropping. https://www.flickr.com/photos/83424882@N00/3483881705/ Image used with permissions under Creative Commons license 2.0, Attribution Generic License (https://creativecommons.org/licenses/by/2.0/)
  • 6. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Monolith development lifecycle releasetestbuild Delivery pipeline App (aka the“monolith”)Developers
  • 7. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Too much software coupling Shared libraries Shared data
  • 8. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Evolving towards microservices “IMG_1760” by Robert Couse-Baker. No alterations other than cropping. https://www.flickr.com/photos/29233640@N07/14859431605/ Image used with permissions under Creative Commons license 2.0, Attribution Generic License (https://creativecommons.org/licenses/by/2.0/)
  • 9. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
  • 10. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential “service-oriented architecture composed of loosely coupled elements that have bounded contexts” Adrian Cockcroft (former Cloud Architect at Netflix and Technology Fellow at Battery Ventures, now VP Cloud Architecture Strategy at AWS)
  • 11. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential “service-oriented architecture composed of loosely coupled elements that have bounded contexts” Services communicate with each other over the network Adrian Cockcroft (former Cloud Architect at Netflix and Technology Fellow at Battery Ventures, now VP Cloud Architecture Strategy at AWS)
  • 12. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential “service-oriented architecture composed of loosely coupled elements that have bounded contexts” You can update the services independently; updating one service doesn’t require changing any other services. Adrian Cockcroft (former Cloud Architect at Netflix and Technology Fellow at Battery Ventures, now VP Cloud Architecture Strategy at AWS)
  • 13. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential “service-oriented architecture composed of loosely coupled elements that have bounded contexts” Self-contained; you can update the code without knowing anything about the internals of other microservices Adrian Cockcroft (former Cloud Architect at Netflix and Technology Fellow at Battery Ventures, now VP Cloud Architecture Strategy at AWS)
  • 14. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Principles of Microservices 1. Rely only on the public API Ÿ Hide your data Ÿ Document your APIs Ÿ Define a versioning strategy 2. Use the right tool for the job Ÿ Polygot persistence (data layer) Ÿ Polyglot frameworks (app layer) 3. Secure your services Ÿ Defense-in-depth Ÿ Authentication/authorization 6. Automate everything Ÿ Adopt DevOps 4. Be a good citizen within the ecosystem Ÿ Have SLAs Ÿ Distributed monitoring, logging, tracing 5. More than just technology transformation Ÿ Embrace organizational change Ÿ Favor small focused dev teams
  • 15. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Benefits of microservices Rapid Build/Test/Release Cycles Clear ownership and accountability Easier to scale each individual micro-service New releases take minutes Short time to add new features Easier to maintain and evolve system Faster innovation Delighted customers Increased agility
  • 16. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
  • 17. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential = 50 million deployments a year Thousands of teams × Microservice architecture × Continuous delivery × Multiple environments (5708 per hour, or every 0.63 second)
  • 18. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Challenges of Microservices 1. Distributed System Ÿ Performance Ÿ Reliability 2. Eventual Consistency Ÿ Decentralized data management 3. Operational Complexity Ÿ Deployments Ÿ Monitoring
  • 19. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential For less-complex systems, the extra baggage required to manage microservices reduces productivity As complexity kicks in, Productivity starts failing rapidly the decreased coupling of microservices reduces the attenuation of productivity https://www.martinfowler.com/microservices/#when
  • 20. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Strangling the Monolith Database StoreFront UI Browser Cart Service Account Service User Service
  • 21. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential No New Feature on the Monolith Database StoreFront UI Browser New Microservice New DB Cart Service Account Service User Service
  • 22. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Anti-Corruption Layer for Integration ACL Database StoreFront UI Browser New Microservice New DB Cart Service Account Service User Service
  • 23. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Cart Service Account Service Start with a Simple Existing Service… Database StoreFront UI Browser User Microservice User DB New Microservice New DB User Service Client
  • 24. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Account Service User Service Client …Move on to More Complicated Services Cart Microservice Database StoreFront UI Browser User Microservice User DB New Microservice New DB ACL Cart DB Cart Service
  • 25. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential …Keep Walking and… Cart Microservice Database StoreFront UI Browser User Microservice User DB New Microservice New DB Account Microservice Cart DB Account DB Account Service User Service Client ACL Cart Service ACL
  • 26. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential …The Monolith is Eventually Gone Cart Microservice StoreFront UI Browser User Microservice User DB New Microservice New DB Account Microservice Cart DB Account DB
  • 27. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Microservices Architecture on AWS CloudFront API Gateway Application Load Balancer ECS EC2 Lambda ElastiCache RDS DynamoDB CloudWatchS3 Static content
  • 28. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Digital Goodie From Monolith to Microservices
  • 29. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential It’s a journey… Expect challenges along the way… • Understanding of business domains • Coordinating transactions across multiple services • Eventual Consistency • Service discovery • Lots of moving parts requires increased coordination • Complexity of testing / deploying / operating a distributed system • Cultural transformation
  • 30. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential Thank you! stroppad@amazon.com