SlideShare ist ein Scribd-Unternehmen logo
1 von 62
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Building Modern Applications
on AWS
Injae Kwak, Solutions Architect
Phong Le, Solutions Architect
Bikram Bora, Solutions Architect
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Agenda
9:00am - Opening and Housekeeping
9:15am - Unlocking Business Values with Modern Application Development
9:35am - Customer Case Study
10:00am - Intro to Docker, Container Ecosystem and Serverless on AWS
10:20am - Morning Tea/Break time
10:40am - Hands-on Lab
12:00pm - Lunch
1:00pm - Hands on Lab (continued)
4:00pm – End of Workshop
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Modern Applications
Injae Kwak, Solutions Architect
injakwak@amazon.com
Unlocking Business Values with Modern Application
Development
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Mobility – Access to applications, devices and data needs to be accessible
inside and outside the organisation
Device boom – 100 million smart phones in 2007…today there are over 10
billion connected devices…30 billion by 2020
Hybrid cloud – Applications and data needs to span on-premises and cloud
Data growth – Exponential data growth and more ability than ever to capture
insights the yield competitive advantage
Shift to microservices – The move from monoliths to highly decoupled
applications that can span multiple applications and even organisations
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
The Monolith
“…a single-tiered software application in which the user interface and data access
code are combined into a single program from a single platform.
A monolithic application is self-contained, and independent from other computing
applications.”
- Wikipedia
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Monolith = “Traditional” Applications
• Applications developed to “best practices” and standards of the time
• Monolith does not mean poorly designed
• Applications didn’t need to be or weren’t designed to be distributed
• Application design constrained by resources
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Monolith = “Traditional” Applications
Pros:
• At first…
o Simple
o No over-engineering
• In-process latencies
• Single codebase
• Resource efficient at small scale
Cons:
• Modularity is hard to enforce as
app grows
• Can only scale up!
• All or nothing deployment
• Increasing database dependencies
• Long release cycles
• Slow to react to customer demand
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
2001+Prior 2001
Development transformation at Amazon: 2001+
monolithic application
+ teams
microservices
+ 2 pizza teams
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Monolith development lifecycle
developers
releasetestbuild
delivery pipelineapp
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Value
Selection
Convenience
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Conway’s Law
“…organizations which design systems ... are constrained to produce designs which are
copies of the communication structures of these organizations…”
— M. Conway
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
> 60 million deployments a year*
Thousands of teams
× Microservice architecture
× Continuous delivery
× Multiple environments
*2016 number
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Single-purpose
Connect only through APIs
Connect over HTTPS
Largely “black boxes” to each
other
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
So what is a microservice?
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
What microservices are…
“…the microservice architectural style is an approach to developing a single
application as a suite of small services, each running in its own process and
communicating with lightweight mechanisms, often an HTTP resource API…”
- Martin Fowler
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
What microservices are…
“Independently deployable services that work together, modelled around a
business domain…”
-Sam Newman
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
What microservices are…
“The technical authority for a business capability”
- Udi Dahan
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Shipping
Inventory
Customer
Service
Accounts
Returns
Invoicing
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Microservice development lifecycle
developers delivery pipelinesservices
releasetestbuild
releasetestbuild
releasetestbuild
releasetestbuild
releasetestbuild
releasetestbuild
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
What does this look like?
Admin UI
Orders Service
Inventory Service
Shipping Service
Admin UI
Orders
Service
Inventory
Service
Shipping
Service
Customer UI
Customer UI
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Docker
Lightweight container virtualization platform.
Tools to manage and deploy your applications.
Licensed under the Apache 2.0 license.
Built by Docker, Inc.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
What is a container?
• A lightweight, stand-alone, executable package of software that
includes all dependencies: code, runtime, system tools, system
libraries, settings.
• Containers isolate software from its surroundings
• development and staging environments
• help reduce conflicts between teams running different software on the
same infrastructure.
• Long history: chroot, FreeBSD Jails, Solaris Containers, OpenVZ, LXC
• Docker simplified creation/management/operation of containers
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
MICROSERVICES & CONTAINERS
Portability
Package application and dependencies in
a single artifact
Any language on any platform
Speed to launch is milliseconds vs…
Image is the version
Stateless servers reduce change risk
Admin UI
Orders
Service
Inventory
Service
Shipping
Service
Customer UI
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Benefits to the business?
• React to customer demand at a much faster rate than before
• Reduce the blast radius of failures allowing your customers to
continue to use the application if small pieces are unavailable
• Allow richer insights into how your users are interacting with your
application as we start collecting usage data in each microservice
that SHOULD map to business domains
• Better resource utilization means a cheaper infrastructure bill
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Final thoughts
Not everyone needs Microservices. If you have a well defined domain then you
don’t have to break the monolith apart entirely
Don’t use a big bang approach. It’s an evolutionary journey.
Consider a monolith-first approach. Identify your bounded contexts first and then
decouple.
Lead your microservices strategy from strategic perspective. Model your
microservices around business capabilities and objectives.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thank you 
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Case Study:
Transition to Microservices
on Amazon Web Services
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Quick Overview
• AgTech Industry.
• Cloud-based commodity management platform.
• Allows businesses to store, track and manage their:
• Contracts
• Deliveries
• Prices
• Orders
• Consignments
• Invoices
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Existing Platform
• Built initial platform on Microsoft Azure.
• Cloud Native – utilizing Microsoft services.
• Continuing to run existing infrastructure on Azure.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Drivers
• Modern Application – “Monolithic” style.
• Difficult to maintain / update / scale components.
• Looking for increased scalability.
• Removing technical debt.
• Going global.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Getting Started
• Planning is key!
• Identified key domain areas and bounded contexts.
• Each area would become responsible for processing
and storing its own data.
• Understood data flows / communication between
services.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Cloud Providers
• Bigger than just a monolith => microservices project.
• Also changing Cloud Providers…
• Talked to AWS and engaged a partner – Itoc – to assist
in setting up the Foundational AWS environment and
provide guidance and assistance during the transition
to Microservices on AWS.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Technical Implementation
• Identified core skills across the team and selected
platforms & languages.
• Desire across the team to avoid managing
infrastructure & leverage AWS-native services.
• Landed on Containerisation (i.e. Docker) and
Serverless (Lambda).
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Technical Implementation
• Validated and tweaked reference microservices
architecture with Itoc.
• Automation and DevOps pipelines key to ensuring
consistent and repeatable deployments.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
A Few Learnings
• Increased Agility – speed of turn around and
implementation time.
• Standardise your deployments.
• Leave technical debt behind. Embrace the new!
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
What’s Next?
• Going Global – entering overseas markets.
• Migration off existing platform into full microservices.
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Phong Le, Solutions Architect
huu@amazon.com
Modern Applications
A crash course on Microservices, Docker, Containers and
Serverless on AWS
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Agenda
• Decomposing a Monolith into Microservices
• Getting Started, Challenges and Tips & Tricks
• Docker and Containers on AWS
• What about Serverless?
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Or how do we
start?
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Monolith to Microservices
https://www.martinfowler.com/bliki/StranglerApplication.html
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Breaking out your very first microservice
Break dependencies away
from the Monolith
Dependency of AuthN
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Challenges and Tips & Tricks
Distributed Systems
Tech Sprawl (RDD)
Operational Support
Challenges Tips
DistributedTracing (X-Ray), Monitoring and Log
Aggregation (CloudWatch)
Enforce Minimum Standards and Architectural Patterns
You build it, you own it (and you’re on call)
Distributed Data Event Sourcing (Kappa Architecture) and CQRS
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
So how do we run our (micro)
services?
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Pets Cattle Rabbits Microbes
Physical Virtualisation Containerization Serverless
Evolution Of Compute
Tin VMs Docker Lambda
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Containers and Docker
A container is a standard unit of software that packages up code and all its
dependencies so the application runs quickly and reliably from one computing
environment to another.1
1 https://www.docker.com/resources/what-container
Server
Operating System
Docker Engine
AppA
AppB
AppC
AppD
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Docker Architecture
Docker daemon manages images, containers,
networks, and volumes
Docker CLI communicates with Docker daemon
through a REST API
Sample commands:
docker build – build image from Dockerfile
docker images – list images on Docker host
docker run – run an image
docker ps – list running containers
docker stop – stop a running container
Docker daemon /
REST API
Docker Host
Container 1
Container 2
Container n
Ubuntu Image
Nginx Image
Custom Image
Docker Client
Docker Registry
Docker
Hub
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Docker Image
Read-only template
Used to launch container
Start with base image, additional data or
dependencies added as layers
Union file system merges layers into single
image
Instructions documented in Dockerfile
kernel
Base Image
Image layer
Image layer
Image layer
References
parent image
layer
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Dockerfile
FROM dockerfile/ubuntu
RUN 
add-apt-repository -y ppa:nginx/stable && 
apt-get update && 
apt-get install -y nginx && 
rm -rf /var/lib/apt/lists/* && 
echo "ndaemon off;" >> /etc/nginx/nginx.conf && 
chown -R www-data:www-data /var/lib/nginx
VOLUME ["/etc/nginx/sites-enabled",
"/etc/nginx/conf.d", "/var/log/nginx",
"/var/www/html"]
WORKDIR /etc/nginx
CMD ["nginx"]
EXPOSE 80
Pull base image
Install Nginx
Define mountable
directories
Define working
directory
Define default
command
Expose ports
yourimage:1.0.0
9c9e81692ae9
02071fceb21b
b35224abf821
fbc63d321d73
8c2e06607696
E7829950cee3
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Containers Ecosystem on AWS
Amazon Elastic
Container Service
AWS Fargate Amazon EC2
Container Registry
Amazon Elastic
Container Service for
Kubernetes
Container Orchestration Services Container Registry
Kops Rancher Docker Hub
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Combine best of containers and serverless
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Closing thoughts
• Microservices can come with its own challenges
• Containers are a great stepping stone to get started
• Think about your customer first and work backwards
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Questions?
Survey Link: http://bit.ly/2KrZNEL
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Hands-on Lab
www.mythicalmysfits.com
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Our mission: Ethical, mythical creature care.
Our priority: Find homes for the abandoned, and often misunderstood, mythical creatures in our community.
Help us find their forever homes!
Your mission: Modernize and innovate on the Mythical stack.
Lab 1: Containerize the monolithic application
Lab 2: Deploy containers using AWS Fargate
Lab 3: Scale and lay the foundation for microservices with an AWS Application Load Balancer (ALB)
Lab 4: Our developers completed Project Cuddle which adds a “like” feature to the application. Since we want
to move to a microservices design, help us break this functionality from the monolith and deploy it with AWS
Fargate as its own containerized microservice.
Welcome to Mythical Mysfits
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Lab 1: Build/Test Monolith Docker Image
VPC
AWS Cloud
Public subnet Private subnet
users
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Lab 2: Deploy with Fargate
VPC
AWS Cloud
Public subnet Private subnet
users
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Lab 3: Scale with ALB
VPC
AWS Cloud
Private subnet Private subnet
users
/
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Lab 4: Deploy ”Like” Microservice
VPC
AWS Cloud
Private subnet Private subnet
users
/ + /fulfill-like
/like
/fulfill-like
/fulfill-like
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark
Instructions:
http://www.mythicalmysfits.com/fargate
Raise your hand if you have any questions. Feel free to work together with folks at
your table/chairs. Near the end, we’ll hand out AWS credit codes to cover costs for
the workshop.
High-five your neighbors and have fun! Please fill out feedback forms and follow the
clean-up instructions once you are done!
Email us with comments/questions/feedback/AWS Account Credit:
injakwak@amazon.com
aws-mythical-mysfits@amazon.com
Logistics

Weitere ähnliche Inhalte

Was ist angesagt?

AWS Initiate Day Dublin 2019 – The Culture of Innovation at Amazon
AWS Initiate Day Dublin 2019 – The Culture of Innovation at AmazonAWS Initiate Day Dublin 2019 – The Culture of Innovation at Amazon
AWS Initiate Day Dublin 2019 – The Culture of Innovation at AmazonAmazon Web Services
 
Welcome Address and Keynote Presentation
Welcome Address and Keynote PresentationWelcome Address and Keynote Presentation
Welcome Address and Keynote PresentationAmazon Web Services
 
Modern Applications Development on AWS
Modern Applications Development on AWSModern Applications Development on AWS
Modern Applications Development on AWSBoaz Ziniman
 
Becoming A High Frequency Enterprise
Becoming A High Frequency EnterpriseBecoming A High Frequency Enterprise
Becoming A High Frequency EnterpriseAmazon Web Services
 
What can you do with Serverless in 2020
What can you do with Serverless in 2020What can you do with Serverless in 2020
What can you do with Serverless in 2020Boaz Ziniman
 
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_haveHow_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_haveAmazon Web Services
 
Pensi di essere pronto per i microservizi?
Pensi di essere pronto per i microservizi?Pensi di essere pronto per i microservizi?
Pensi di essere pronto per i microservizi?Amazon Web Services
 
Drive Digital Transformation Using AI
Drive Digital Transformation Using AIDrive Digital Transformation Using AI
Drive Digital Transformation Using AIAmazon Web Services
 
Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0
Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0
Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0Amazon Web Services
 
AWS Initiate Day Dublin 2019 – Breaking down the Monoliths
AWS Initiate Day Dublin 2019 – Breaking down the MonolithsAWS Initiate Day Dublin 2019 – Breaking down the Monoliths
AWS Initiate Day Dublin 2019 – Breaking down the MonolithsAmazon Web Services
 
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...Amazon Web Services
 
Security Framework Shakedown: Chart Your Journey with AWS Best Practices
Security Framework Shakedown: Chart Your Journey with AWS Best PracticesSecurity Framework Shakedown: Chart Your Journey with AWS Best Practices
Security Framework Shakedown: Chart Your Journey with AWS Best PracticesAmazon Web Services
 
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWSAWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWSAmazon Web Services
 
How to train and deploy your machine learning models with Amazon SageMaker
How to train and deploy your machine learning models with Amazon SageMakerHow to train and deploy your machine learning models with Amazon SageMaker
How to train and deploy your machine learning models with Amazon SageMakerAmazon 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
 

Was ist angesagt? (20)

AWS Initiate Day Dublin 2019 – The Culture of Innovation at Amazon
AWS Initiate Day Dublin 2019 – The Culture of Innovation at AmazonAWS Initiate Day Dublin 2019 – The Culture of Innovation at Amazon
AWS Initiate Day Dublin 2019 – The Culture of Innovation at Amazon
 
Welcome Address and Keynote Presentation
Welcome Address and Keynote PresentationWelcome Address and Keynote Presentation
Welcome Address and Keynote Presentation
 
Modern Applications Development on AWS
Modern Applications Development on AWSModern Applications Development on AWS
Modern Applications Development on AWS
 
Becoming A High Frequency Enterprise
Becoming A High Frequency EnterpriseBecoming A High Frequency Enterprise
Becoming A High Frequency Enterprise
 
What can you do with Serverless in 2020
What can you do with Serverless in 2020What can you do with Serverless in 2020
What can you do with Serverless in 2020
 
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_haveHow_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
 
Pensi di essere pronto per i microservizi?
Pensi di essere pronto per i microservizi?Pensi di essere pronto per i microservizi?
Pensi di essere pronto per i microservizi?
 
Drive Digital Transformation Using AI
Drive Digital Transformation Using AIDrive Digital Transformation Using AI
Drive Digital Transformation Using AI
 
企業雲端化之旅
企業雲端化之旅企業雲端化之旅
企業雲端化之旅
 
Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0
Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0
Move users to AWS with Amazon Workspaces, and Amazon Appstream 2.0
 
AWS Initiate Day Dublin 2019 – Breaking down the Monoliths
AWS Initiate Day Dublin 2019 – Breaking down the MonolithsAWS Initiate Day Dublin 2019 – Breaking down the Monoliths
AWS Initiate Day Dublin 2019 – Breaking down the Monoliths
 
Keynote: Introduction to AWS
Keynote: Introduction to AWS Keynote: Introduction to AWS
Keynote: Introduction to AWS
 
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
 
Security Framework Shakedown: Chart Your Journey with AWS Best Practices
Security Framework Shakedown: Chart Your Journey with AWS Best PracticesSecurity Framework Shakedown: Chart Your Journey with AWS Best Practices
Security Framework Shakedown: Chart Your Journey with AWS Best Practices
 
Moving to DevOps the Amazon Way
Moving to DevOps the Amazon WayMoving to DevOps the Amazon Way
Moving to DevOps the Amazon Way
 
Financial Services Industry Forum
Financial Services Industry ForumFinancial Services Industry Forum
Financial Services Industry Forum
 
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWSAWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
 
How to train and deploy your machine learning models with Amazon SageMaker
How to train and deploy your machine learning models with Amazon SageMakerHow to train and deploy your machine learning models with Amazon SageMaker
How to train and deploy your machine learning models with Amazon SageMaker
 
Moving to DevOps the Amazon Way
Moving to DevOps the Amazon WayMoving to DevOps the Amazon Way
Moving to DevOps the Amazon Way
 
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...
 

Ähnlich wie Building Modern Applications on AWS

Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.
Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.
Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.Amazon Web Services LATAM
 
Migrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspective
Migrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspectiveMigrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspective
Migrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspectiveAmazon Web Services
 
2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverlessMarcia Villalba
 
CICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdfCICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdfAmazon Web Services
 
以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構Amazon Web Services
 
以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構Amazon Web Services
 
AWS Sydney Summit 2019 Re:Cap
AWS Sydney Summit 2019 Re:CapAWS Sydney Summit 2019 Re:Cap
AWS Sydney Summit 2019 Re:CapInjae Kwak
 
Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...
Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...
Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...Amazon Web Services
 
Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...
Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...
Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...Amazon Web Services
 
AWS Startup Day Santiago - Tools For Building Your Startup
AWS Startup Day Santiago - Tools For Building Your StartupAWS Startup Day Santiago - Tools For Building Your Startup
AWS Startup Day Santiago - Tools For Building Your StartupAmazon Web Services LATAM
 
Monolithic to Microservices Demystified
Monolithic to Microservices DemystifiedMonolithic to Microservices Demystified
Monolithic to Microservices DemystifiedTom Laszewski
 
AWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applicationsAWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applicationsCobus Bernard
 
How to speed up and scale your innovation efforts - MAD203 - Chicago AWS Summit
How to speed up and scale your innovation efforts - MAD203 - Chicago AWS SummitHow to speed up and scale your innovation efforts - MAD203 - Chicago AWS Summit
How to speed up and scale your innovation efforts - MAD203 - Chicago AWS SummitAmazon Web Services
 
AWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your StartupAWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your StartupAmazon Web Services LATAM
 
Agile and NextOps
Agile and NextOpsAgile and NextOps
Agile and NextOpsCprime
 

Ähnlich wie Building Modern Applications on AWS (20)

Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.
Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.
Inovação Rápida: O caso de negócio para desenvolvimento de aplicações modernas.
 
Migrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspective
Migrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspectiveMigrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspective
Migrate-Critical-Workload-to-AWS-From-Domain-Driven-Design-perspective
 
Containers on AWS
Containers on AWSContainers on AWS
Containers on AWS
 
2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless
 
Breaking Down the Monowhat
Breaking Down the MonowhatBreaking Down the Monowhat
Breaking Down the Monowhat
 
CICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdfCICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdf
 
以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構
 
以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構
 
AWS Sydney Summit 2019 Re:Cap
AWS Sydney Summit 2019 Re:CapAWS Sydney Summit 2019 Re:Cap
AWS Sydney Summit 2019 Re:Cap
 
Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...
Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...
Mythical Mysfits: Build & collaborate on a modern web application on AWS - MA...
 
Containers for Startups
Containers for StartupsContainers for Startups
Containers for Startups
 
Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...
Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...
Mythical Mysfits: Monolith to microservices using Docker and Fargate - MAD309...
 
De un monolito a microservicios
De un monolito a microserviciosDe un monolito a microservicios
De un monolito a microservicios
 
CI/CD for Modern Applications
CI/CD for Modern ApplicationsCI/CD for Modern Applications
CI/CD for Modern Applications
 
AWS Startup Day Santiago - Tools For Building Your Startup
AWS Startup Day Santiago - Tools For Building Your StartupAWS Startup Day Santiago - Tools For Building Your Startup
AWS Startup Day Santiago - Tools For Building Your Startup
 
Monolithic to Microservices Demystified
Monolithic to Microservices DemystifiedMonolithic to Microservices Demystified
Monolithic to Microservices Demystified
 
AWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applicationsAWS DevDay Cologne - CI/CD for modern applications
AWS DevDay Cologne - CI/CD for modern applications
 
How to speed up and scale your innovation efforts - MAD203 - Chicago AWS Summit
How to speed up and scale your innovation efforts - MAD203 - Chicago AWS SummitHow to speed up and scale your innovation efforts - MAD203 - Chicago AWS Summit
How to speed up and scale your innovation efforts - MAD203 - Chicago AWS Summit
 
AWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your StartupAWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your Startup
 
Agile and NextOps
Agile and NextOpsAgile and NextOps
Agile and NextOps
 

Kürzlich hochgeladen

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Kürzlich hochgeladen (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

Building Modern Applications on AWS

  • 1. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Building Modern Applications on AWS Injae Kwak, Solutions Architect Phong Le, Solutions Architect Bikram Bora, Solutions Architect
  • 2. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Agenda 9:00am - Opening and Housekeeping 9:15am - Unlocking Business Values with Modern Application Development 9:35am - Customer Case Study 10:00am - Intro to Docker, Container Ecosystem and Serverless on AWS 10:20am - Morning Tea/Break time 10:40am - Hands-on Lab 12:00pm - Lunch 1:00pm - Hands on Lab (continued) 4:00pm – End of Workshop
  • 3. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Modern Applications Injae Kwak, Solutions Architect injakwak@amazon.com Unlocking Business Values with Modern Application Development
  • 4. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Mobility – Access to applications, devices and data needs to be accessible inside and outside the organisation Device boom – 100 million smart phones in 2007…today there are over 10 billion connected devices…30 billion by 2020 Hybrid cloud – Applications and data needs to span on-premises and cloud Data growth – Exponential data growth and more ability than ever to capture insights the yield competitive advantage Shift to microservices – The move from monoliths to highly decoupled applications that can span multiple applications and even organisations
  • 5. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 6. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark The Monolith “…a single-tiered software application in which the user interface and data access code are combined into a single program from a single platform. A monolithic application is self-contained, and independent from other computing applications.” - Wikipedia
  • 7. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Monolith = “Traditional” Applications • Applications developed to “best practices” and standards of the time • Monolith does not mean poorly designed • Applications didn’t need to be or weren’t designed to be distributed • Application design constrained by resources
  • 8. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Monolith = “Traditional” Applications Pros: • At first… o Simple o No over-engineering • In-process latencies • Single codebase • Resource efficient at small scale Cons: • Modularity is hard to enforce as app grows • Can only scale up! • All or nothing deployment • Increasing database dependencies • Long release cycles • Slow to react to customer demand
  • 9. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark 2001+Prior 2001 Development transformation at Amazon: 2001+ monolithic application + teams microservices + 2 pizza teams
  • 10. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Monolith development lifecycle developers releasetestbuild delivery pipelineapp
  • 11. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Value Selection Convenience
  • 12. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 13. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Conway’s Law “…organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations…” — M. Conway
  • 14. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. > 60 million deployments a year* Thousands of teams × Microservice architecture × Continuous delivery × Multiple environments *2016 number
  • 15. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Single-purpose Connect only through APIs Connect over HTTPS Largely “black boxes” to each other
  • 16. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 17. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. So what is a microservice?
  • 18. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark What microservices are… “…the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API…” - Martin Fowler
  • 19. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark What microservices are… “Independently deployable services that work together, modelled around a business domain…” -Sam Newman
  • 20. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark What microservices are… “The technical authority for a business capability” - Udi Dahan
  • 21. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Shipping Inventory Customer Service Accounts Returns Invoicing
  • 22. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Microservice development lifecycle developers delivery pipelinesservices releasetestbuild releasetestbuild releasetestbuild releasetestbuild releasetestbuild releasetestbuild
  • 23. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark What does this look like? Admin UI Orders Service Inventory Service Shipping Service Admin UI Orders Service Inventory Service Shipping Service Customer UI Customer UI
  • 24. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Docker Lightweight container virtualization platform. Tools to manage and deploy your applications. Licensed under the Apache 2.0 license. Built by Docker, Inc.
  • 25. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark What is a container? • A lightweight, stand-alone, executable package of software that includes all dependencies: code, runtime, system tools, system libraries, settings. • Containers isolate software from its surroundings • development and staging environments • help reduce conflicts between teams running different software on the same infrastructure. • Long history: chroot, FreeBSD Jails, Solaris Containers, OpenVZ, LXC • Docker simplified creation/management/operation of containers
  • 26. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. MICROSERVICES & CONTAINERS Portability Package application and dependencies in a single artifact Any language on any platform Speed to launch is milliseconds vs… Image is the version Stateless servers reduce change risk Admin UI Orders Service Inventory Service Shipping Service Customer UI
  • 27. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Benefits to the business? • React to customer demand at a much faster rate than before • Reduce the blast radius of failures allowing your customers to continue to use the application if small pieces are unavailable • Allow richer insights into how your users are interacting with your application as we start collecting usage data in each microservice that SHOULD map to business domains • Better resource utilization means a cheaper infrastructure bill
  • 28. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Final thoughts Not everyone needs Microservices. If you have a well defined domain then you don’t have to break the monolith apart entirely Don’t use a big bang approach. It’s an evolutionary journey. Consider a monolith-first approach. Identify your bounded contexts first and then decouple. Lead your microservices strategy from strategic perspective. Model your microservices around business capabilities and objectives.
  • 29. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Thank you 
  • 30. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Case Study: Transition to Microservices on Amazon Web Services
  • 31. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Quick Overview • AgTech Industry. • Cloud-based commodity management platform. • Allows businesses to store, track and manage their: • Contracts • Deliveries • Prices • Orders • Consignments • Invoices
  • 32. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Existing Platform • Built initial platform on Microsoft Azure. • Cloud Native – utilizing Microsoft services. • Continuing to run existing infrastructure on Azure.
  • 33. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Drivers • Modern Application – “Monolithic” style. • Difficult to maintain / update / scale components. • Looking for increased scalability. • Removing technical debt. • Going global.
  • 34. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Getting Started • Planning is key! • Identified key domain areas and bounded contexts. • Each area would become responsible for processing and storing its own data. • Understood data flows / communication between services.
  • 35. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Cloud Providers • Bigger than just a monolith => microservices project. • Also changing Cloud Providers… • Talked to AWS and engaged a partner – Itoc – to assist in setting up the Foundational AWS environment and provide guidance and assistance during the transition to Microservices on AWS.
  • 36. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Technical Implementation • Identified core skills across the team and selected platforms & languages. • Desire across the team to avoid managing infrastructure & leverage AWS-native services. • Landed on Containerisation (i.e. Docker) and Serverless (Lambda).
  • 37. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Technical Implementation • Validated and tweaked reference microservices architecture with Itoc. • Automation and DevOps pipelines key to ensuring consistent and repeatable deployments.
  • 38. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark A Few Learnings • Increased Agility – speed of turn around and implementation time. • Standardise your deployments. • Leave technical debt behind. Embrace the new!
  • 39. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark What’s Next? • Going Global – entering overseas markets. • Migration off existing platform into full microservices.
  • 40. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Phong Le, Solutions Architect huu@amazon.com Modern Applications A crash course on Microservices, Docker, Containers and Serverless on AWS
  • 41. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Agenda • Decomposing a Monolith into Microservices • Getting Started, Challenges and Tips & Tricks • Docker and Containers on AWS • What about Serverless?
  • 42. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Or how do we start?
  • 43. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Monolith to Microservices https://www.martinfowler.com/bliki/StranglerApplication.html
  • 44. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Breaking out your very first microservice Break dependencies away from the Monolith Dependency of AuthN
  • 45. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Challenges and Tips & Tricks Distributed Systems Tech Sprawl (RDD) Operational Support Challenges Tips DistributedTracing (X-Ray), Monitoring and Log Aggregation (CloudWatch) Enforce Minimum Standards and Architectural Patterns You build it, you own it (and you’re on call) Distributed Data Event Sourcing (Kappa Architecture) and CQRS
  • 46. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark So how do we run our (micro) services?
  • 47. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Pets Cattle Rabbits Microbes Physical Virtualisation Containerization Serverless Evolution Of Compute Tin VMs Docker Lambda
  • 48. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Containers and Docker A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.1 1 https://www.docker.com/resources/what-container Server Operating System Docker Engine AppA AppB AppC AppD
  • 49. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Docker Architecture Docker daemon manages images, containers, networks, and volumes Docker CLI communicates with Docker daemon through a REST API Sample commands: docker build – build image from Dockerfile docker images – list images on Docker host docker run – run an image docker ps – list running containers docker stop – stop a running container Docker daemon / REST API Docker Host Container 1 Container 2 Container n Ubuntu Image Nginx Image Custom Image Docker Client Docker Registry Docker Hub
  • 50. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Docker Image Read-only template Used to launch container Start with base image, additional data or dependencies added as layers Union file system merges layers into single image Instructions documented in Dockerfile kernel Base Image Image layer Image layer Image layer References parent image layer
  • 51. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Dockerfile FROM dockerfile/ubuntu RUN add-apt-repository -y ppa:nginx/stable && apt-get update && apt-get install -y nginx && rm -rf /var/lib/apt/lists/* && echo "ndaemon off;" >> /etc/nginx/nginx.conf && chown -R www-data:www-data /var/lib/nginx VOLUME ["/etc/nginx/sites-enabled", "/etc/nginx/conf.d", "/var/log/nginx", "/var/www/html"] WORKDIR /etc/nginx CMD ["nginx"] EXPOSE 80 Pull base image Install Nginx Define mountable directories Define working directory Define default command Expose ports yourimage:1.0.0 9c9e81692ae9 02071fceb21b b35224abf821 fbc63d321d73 8c2e06607696 E7829950cee3
  • 52. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Containers Ecosystem on AWS Amazon Elastic Container Service AWS Fargate Amazon EC2 Container Registry Amazon Elastic Container Service for Kubernetes Container Orchestration Services Container Registry Kops Rancher Docker Hub
  • 53. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Combine best of containers and serverless
  • 54. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Closing thoughts • Microservices can come with its own challenges • Containers are a great stepping stone to get started • Think about your customer first and work backwards
  • 55. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Questions? Survey Link: http://bit.ly/2KrZNEL
  • 56. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Hands-on Lab www.mythicalmysfits.com
  • 57. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Our mission: Ethical, mythical creature care. Our priority: Find homes for the abandoned, and often misunderstood, mythical creatures in our community. Help us find their forever homes! Your mission: Modernize and innovate on the Mythical stack. Lab 1: Containerize the monolithic application Lab 2: Deploy containers using AWS Fargate Lab 3: Scale and lay the foundation for microservices with an AWS Application Load Balancer (ALB) Lab 4: Our developers completed Project Cuddle which adds a “like” feature to the application. Since we want to move to a microservices design, help us break this functionality from the monolith and deploy it with AWS Fargate as its own containerized microservice. Welcome to Mythical Mysfits
  • 58. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Lab 1: Build/Test Monolith Docker Image VPC AWS Cloud Public subnet Private subnet users
  • 59. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Lab 2: Deploy with Fargate VPC AWS Cloud Public subnet Private subnet users
  • 60. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Lab 3: Scale with ALB VPC AWS Cloud Private subnet Private subnet users /
  • 61. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Lab 4: Deploy ”Like” Microservice VPC AWS Cloud Private subnet Private subnet users / + /fulfill-like /like /fulfill-like /fulfill-like
  • 62. © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential and Trademark Instructions: http://www.mythicalmysfits.com/fargate Raise your hand if you have any questions. Feel free to work together with folks at your table/chairs. Near the end, we’ll hand out AWS credit codes to cover costs for the workshop. High-five your neighbors and have fun! Please fill out feedback forms and follow the clean-up instructions once you are done! Email us with comments/questions/feedback/AWS Account Credit: injakwak@amazon.com aws-mythical-mysfits@amazon.com Logistics