SlideShare a Scribd company logo
1 of 71
Download to read offline
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Developing Modern Applications in
the Cloud
M A P 0 0 1
IAN MASSINGHAM | DIRECTOR, DEVELOPER TECHNOLOGY & EVANGELISM | AMAZON WEB SERVICES
ianm@amazon.com | @IanMmmm
ANN LEDWITH | DIRECTOR, SERVICE FABRIC CORE, DELIVERY ENABLEMENT & BUILDERS’ TOOLS | SAGE
The new normal: companies are increasingly global
and products are completely digital
47%
of CEOs said they are
being challenged by
the board of directors
to make progress in
digital business
Source: Gartner
79%
of CIOs believe that
digital business is
making their IT
organizations better
prepared to change
67%
of all business leaders
believe that they must
pick up the pace of
digitalization to
remain competitive
To maintain competitive advantage,
digital businesses must innovate as rapidly as possible
FeedbackIdeas
Experiment
Innovation
Flywheel
Invention requires two things: the
ability to try a lot of experiments,
and not having to live with
the collateral damage of
failed experiments.“
Andy Jassy
CEO, Amazon Web Services
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
OLD WORLD IT
Employees at work
Factories + supply chainSales channels
Marketing analytics
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Employees at work
Factories + supply chainSales channels
Marketing analytics
OLD WORLD IT
NEW WORLD IT
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
NEW WORLD IT Employees at work
Factories +
supply chain
IoT connected
things
Online
marketing
Continuous supply
tracking
Just in time
production
Online sales
+ delivery
Social media
Becoming data driven
New channels direct to customer
More things, more scale, rapid change
New Needs
Modern application development
creates competitive differentiation
by enabling rapid innovation
AWS customers are pioneering modern applications
Capabilities of a modern application
Secure Resilient Elastic
Modular Automated Interoperable
Assess and
prioritize,
app by app
Pick path to
modernization
Lift & shift:
data center → EC2
Re-platform:
VMs → containers
Refactor:
monolith → microservices
Re-invent:
host fleets → serverless
Modern application development: a journey with
many paths
Options Available
Re-platform
AWS Fargate
Re-invent
AWS Lambda
Re-factor
AWS Step Functions
Re-Host
Amazon EC2
migrated ~850 applications running in ~5000 containers to Fargate to
reduce the undifferentiated heavy lifting that came with managing
Kubernetes
Re-platform
AWS Fargate
created a serverless stock trade validation system
in 3 months that improved processing times
by 67% while reducing costs by 50%
Re-invent
AWS Lambda
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Modern application checklist
£ Enable security and compliance across the entire app lifecycle
£ Structure apps as collections of microservices
£ Build with serverless technologies as much as possible
£ Use code to model applications and infrastructure
£ Rapidly release high-quality features with CI/CD
£ Gain insights into application behavior with monitoring
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Enable security and compliance across the entire app lifecycle
Securing the lifecycle addresses blind spots without
slowing down innovation
Authenticate Authorize Audit & Govern Validate
Prevent unauthorized
access with strong
access control
Implement role-based
access control using
flexible policies
Evaluate app behavior &
ensure compliance
requirements are met
Verify each step to
ensure solutions work
only as intended
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Structure apps as collections of microservices
When the impact of change is small,
release velocity can increase
Monolithic application
Does everything
Shared release pipeline
Rigid scaling
High impact of change
Hard to adopt new technologies
Microservices
Does one thing
Independent deployments
Independent scaling
Small impact of change
Choice of technology
Structure apps as collections of microservices
When the impact of change is small,
release velocity can increase
Microservices
Do one thing – Well
Structure apps as collections of microservices
Properties of microservices
Microservices
• Independent
• Individually Deployed & Scaled
• Polyglot
• Modular - Easily Replaced
• Decentralized
Structure apps as collections of microservices
Design Concepts
• Use managed services
• Focus on writing your business logic
(not on maintaining infrastructure)
• Loosely coupled & event driven
• Simplify delivery and discovery
AWS Lambda
AWS Fargate
Structure apps as collections of microservices
APIs and decoupled communications enable
automation and improves reliability
FUNCTION
API
API
MICROSERVICE
FUNCTION
EVENT
API
MICROSERVICE
EVENT
API
MICROSERVICE
APPLICATION
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Databases in Modern Applications
Relational
Key-value
DynamoDBAmazon RDS
Aurora CommercialCommunity
Relational or not?
NOT!
Common data categories and use cases
Relational
Referential
integrity, ACID
transactions,
schema-
on-write
Lift and shift, ERP,
CRM, finance
Key-value
High
throughput, low-
latency reads
and writes,
endless scale
Real-time bidding,
shopping cart,
social, product
catalog, customer
preferences
Document
Store
documents and
quickly access
querying on
any attribute
Content
management,
personalization,
mobile
In-memory
Query by key
with
microsecond
latency
Leaderboards,
real-time analytics,
caching
Graph
Quickly and
easily create
and navigate
relationships
between
data
Fraud detection,
social networking,
recommendation
engine
Time-series
Collect, store,
and process
data sequenced
by time
IoT applications,
event tracking
Ledger
Complete,
immutable, and
verifiable history
of all changes to
application data
Systems
of record, supply
chain, health care,
registrations,
financial
Purpose-built databases
Relational Key-value Document In-memory Graph Time-series Ledger
DynamoDB NeptuneAmazon RDS
Aurora CommercialCommunity
Timestream QuantumElastiCacheDocumentDB
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Build with serverless technologies as much as possible
Automation and abstraction frees you
No infrastructure to
provision or manage
Automatically scales
by unit of consumption
Pay for value
billing model
Highly available
and durable
Build with serverless technologies as much as possible
Choice of compute is core to the transformation
Serverless Containers
Long-running
Abstracts the OS
Fully-managed orchestration
Fully-managed cluster scaling
AWS Fargate
Serverless Functions
Event-driven
Many language runtimes
Data source integrations
No server management
AWS Lambda
Build with serverless technologies as much as possible
AWS container services landscape
Management
Deployment, Scheduling,
Scaling & Management of
containerized applications
Hosting
Where the containers run
Amazon Elastic
Container Service
Amazon Elastic
Container Service
for Kubernetes
Amazon EC2
AWS Fargate
Image Registry
Container Image Repository
Amazon Elastic
Container Registry
Build with serverless technologies as much as possible
Choice of compute is core to the transformation
Serverless Containers
Long-running
Abstracts the OS
Fully-managed orchestration
Fully-managed cluster scaling
AWS Fargate
Serverless Functions
Event-driven
Many language runtimes
Data source integrations
No server management
AWS Lambda
Build with serverless technologies as much as possible
Comparison of operational responsibility
AWS Lambda
Serverless functions
AWS Fargate
Serverless containers
ECS/EKS
Container-management as a service
EC2
Infrastructure-as-a-Service
More opinionated
Less opinionated
AWS manages You manage
• Data source integrations
• Physical hardware, software, networking,
and facilities
• Provisioning
• Application code
• Container orchestration, provisioning
• Cluster scaling
• Physical hardware, host OS/kernel,
networking, and facilities
• Application code
• Data source integrations
• Security config and updates, network config,
management tasks
• Container orchestration control plane
• Physical hardware software,
networking, and facilities
• Application code
• Data source integrations
• Work clusters
• Security config and updates, network config,
firewall, management tasks
• Physical hardware software,
networking, and facilities
• Application code
• Data source integrations
• Scaling
• Security config and updates, network config,
management tasks
• Provisioning, managing scaling and
patching of servers
Build with serverless technologies as much as possible
Serverless architectures provide the greatest agility
with the least effort
Focus on creating
business value
Remove heavy lifting with
serverless everything
CUSTOMER
AWS
Messaging & Orchestration
Compute
Physical Infrastructure
API
Business logic
Storage & Databases
Build with serverless technologies as much as possible
Amazon API Gateway
Fully managed service that makes it easy for
developers to publish, maintain, monitor,
and secure APIs at any scale
• Native AWS Service Integration
• Stage and version management
• API Authentication
• WebSockets support
Build with serverless technologies as much as possible
Coordinating multiple services with workflows
increases agility, productivity and flexibility
Track status of data
and execution
Remove
redundant code
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Use code to model applications and infrastructure
Treating everything as software increases the speed
and agility of infrastructure deployments
Design
Write application
code
Create infrastructure
templates
Create stacks Iterate
Use code to model applications and infrastructure
Infrastructure as code
Declarative
I tell you
what I need
I tell you
what to do
Imperative
Use code to model applications and infrastructure
Infrastructure as code goals
1. Make infrastructure changes repeatable and predictable
2. Release infrastructure changes using the same tools as code changes
3. Replicate production environment in a staging environment to enable
continuous testing
Use code to model applications and infrastructure
Model function environments with AWS
Serverless Application Model (SAM)
• Open source framework for building serverless
applications on AWS
• Shorthand syntax to express functions, APIs,
databases, and event source mappings
• Transforms and expands SAM syntax into AWS
CloudFormation syntax on deployment
• Supports all AWS CloudFormation resource types
https://aws.amazon.com/serverless/sam/
Use code to model applications and infrastructure
SAM template
AWSTemplateFormatVersion: '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Resources:
GetFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.get
Runtime: nodejs8.10
CodeUri: src/
Policies:
- DynamoDBReadPolicy:
TableName: !Ref MyTable
Events:
GetResource:
Type: Api
Properties:
Path: /resource/{resourceId}
Method: get
MyTable:
Type: AWS::Serverless::SimpleTable
Just 20 lines to create:
• Lambda function
• IAM role
• API Gateway
• DynamoDB table
Use code to model applications and infrastructure
Use SAM CLI to package and deploy SAM templates
pip install --user aws-sam-cli
sam logs
sam validate
sam local
sam init
sam build (--use-container)
sam package
sam deploy
sam publish
New
Use code to model applications and infrastructure
Nested apps to simplify solving recurring problems
Standard
Component
TweetSource:
Type: AWS::Serverless::Application
Properties:
Location:
ApplicationId: arn:aws:serverlessrepo:...
SemanticVersion: 2.0.0
Parameters:
TweetProcessorFunctionName: !Ref MyFunction
SearchText: '#serverless -filter:nativeretweets’
Custom
Business
Logic
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Rapidly release high-quality features with CI/CD
Teams that practice CI/CD
ship more code faster, and with more confidence
Source: Puppet 2017 State of DevOps Report
5x
Lower change
failure rate
440x
Faster from
commit to deploy
46x
More frequent
deployments
44%
More time spent on
new features & code
Rapidly release high-quality features with CI/CD
Monolith development lifecycle
monitorreleasetestbuild
developers
delivery pipelines
services
???
developers
delivery pipelines
services
Rapidly release high-quality features with CI/CD
Monolith development lifecycle
developers services
monitorreleasetestbuild
delivery pipelines
monitorreleasetestbuild
monitorreleasetestbuild
monitorreleasetestbuild
monitorreleasetestbuild
monitorreleasetestbuild
Rapidly release high-quality features with CI/CD
Monolith development lifecycle
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Enabling rapid innovation at Sage
M A P 0 0 1
ANN LEDWITH | DIRECTOR, SERVICE FABRIC CORE, DELIVERY ENABLEMENT & BUILDERS’ TOOLS | SAGE
© 2019 The Sage Group plc or its licensors. All rights reserved.
We help every type of business thrive
Advertising
Chemicals
Construction
Food and Drink
Marketing
Professional Services
Financial Services
Distribution
Human Resources
Trades
Aerospace
Wholesale
Logistics
Credit
And more…
Small Businesses
Medium Businesses
Large Businesses
Businesses of every size Businesses of every type
© 2019 The Sage Group plc or its licensors. All rights reserved.© 2018 The Sage Group plc or its licensors. All rights reserved.
Sage by numbers
5/7/19 54
Market
• Sage Business Cloud growth of 51%*
• 27.8% operating margin*
• Market cap of c. £6bn*
• Ecosystem of over 40,000 partners
• Over 28 Million people worldwide
(1 in 3 UK) paid by Sage Payroll
• Move $4.2 Trillion annually through Sage
software
• Market Leader in Canada, UK,
Ireland, Spain, France, Spain,
Switzerland, Poland and Africa
• Strong Presence in North America,
Germany, Asia and Brazil
• Presence in 23 countries
13,000
Global company with over
colleagues
Financials
£1,819m
Organic revenue of
FY18
Customers
3 million
Over
Business customers worldwide
*Data for FY18 financial results ending 30th September 2018
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Delivery Enablement and Builder’s Tools
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Quick start blueprints:
• Boilerplate Application Source
Code
• Boilerplate Test Code
• ‘Stack’ Infrastructure as Code
• ‘Delivery’ Infrastructure as
Code:
• CI Pipelines
• Deployment Pipelines
Blueprint
deploy
Infrastructure
Applicationtestbuild
blueprint
Emergency only – use in case of demo gremlins!
FeedbackIdeas
Experiment
Innovation
Flywheel
“Invention requires
two things: the
ability to try a lot of
experiments, and
not having to live
with
the collateral
damage of
failed experiments.“
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Use monitoring to optimize end user experience
The faster you identify issues, the faster they can be
resolved
Metrics, logs
and traces
Monitoring,
debugging and
alerts
Resource and
application
visibility
Real-time
insights
MONITORING
OBSERVABILITY
X-Ray Service
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Benefits of using AWS X-Ray with Lambda
• X-Ray agent is natively built into Lambda.
• Identify initialization and cold starts in Lambda
• Pinpoint issues in downstream services called from your AWS
Lambda function.
• Happens with low latency in real-time. Can see traces in
seconds.
Visualize Service Call Graph (Lambda)
Identify initialization & cold starts (Lambda)
Pinpoint errors (Lambda)
Keeps track of all your application
components, their locations, attributes, and
health status.
• Define convenient names for all cloud
resources
• Discover resources with specific attributes
• Ensure only healthy resources are
discovered
• Use highly available DNS and Regional API.
New: AWS Cloud Map
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
So how do we build modern apps?
£ Build security and compliance into the entire app lifecycle
£ Structure apps as collections of microservices
£ Build with serverless technologies as much as possible
£ Use code to model applications and infrastructure
£ Rapidly release high-quality features with CI/CD
£ Gain insights into application behavior with monitoring
Thank you!
S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
IAN MASSINGHAM | DIRECTOR, DEVELOPER TECHNOLOGY & EVANGELISM | AMAZON WEB SERVICES
ianm@amazon.com | @IanMmmm
ANN LEDWITH | DIRECTOR, SERVICE FABRIC CORE, DELIVERY ENABLEMENT & BUILDERS’ TOOLS | SAGE
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I TS U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

AWS_Architecture_e-commerce
AWS_Architecture_e-commerceAWS_Architecture_e-commerce
AWS_Architecture_e-commerce
SEONGTAEK OH
 

What's hot (20)

AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic BeanstalkAWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
AWS Black Belt Online Seminar 2017 AWS Elastic Beanstalk
 
20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway 20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway
 
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAn introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
 
AWS Control Tower를 통한 클라우드 보안 및 거버넌스 설계 - 김학민 :: AWS 클라우드 마이그레이션 온라인
AWS Control Tower를 통한 클라우드 보안 및 거버넌스 설계 - 김학민 :: AWS 클라우드 마이그레이션 온라인AWS Control Tower를 통한 클라우드 보안 및 거버넌스 설계 - 김학민 :: AWS 클라우드 마이그레이션 온라인
AWS Control Tower를 통한 클라우드 보안 및 거버넌스 설계 - 김학민 :: AWS 클라우드 마이그레이션 온라인
 
AWS X-Ray를 통한 서버리스 분산 애플리케이션 추적하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS X-Ray를 통한 서버리스 분산 애플리케이션 추적하기 - 윤석찬 (AWS 테크에반젤리스트)AWS X-Ray를 통한 서버리스 분산 애플리케이션 추적하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS X-Ray를 통한 서버리스 분산 애플리케이션 추적하기 - 윤석찬 (AWS 테크에반젤리스트)
 
AWS CDK Introduction
AWS CDK IntroductionAWS CDK Introduction
AWS CDK Introduction
 
Well-Architected Bootcamp
Well-Architected BootcampWell-Architected Bootcamp
Well-Architected Bootcamp
 
Introduction to Amazon EC2
Introduction to Amazon EC2Introduction to Amazon EC2
Introduction to Amazon EC2
 
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon PinpointAmazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
 
Aurora Serverless: Scalable, Cost-Effective Application Deployment (DAT336) -...
Aurora Serverless: Scalable, Cost-Effective Application Deployment (DAT336) -...Aurora Serverless: Scalable, Cost-Effective Application Deployment (DAT336) -...
Aurora Serverless: Scalable, Cost-Effective Application Deployment (DAT336) -...
 
AWS Technical Essentials Day
AWS Technical Essentials DayAWS Technical Essentials Day
AWS Technical Essentials Day
 
AWS_Architecture_e-commerce
AWS_Architecture_e-commerceAWS_Architecture_e-commerce
AWS_Architecture_e-commerce
 
Introduction to Serverless
Introduction to ServerlessIntroduction to Serverless
Introduction to Serverless
 
An Overview of Machine Learning on AWS
An Overview of Machine Learning on AWSAn Overview of Machine Learning on AWS
An Overview of Machine Learning on AWS
 
Security best practices the well-architected way - SDD318 - AWS re:Inforce 2019
Security best practices the well-architected way - SDD318 - AWS re:Inforce 2019 Security best practices the well-architected way - SDD318 - AWS re:Inforce 2019
Security best practices the well-architected way - SDD318 - AWS re:Inforce 2019
 
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
Best Practices for CI/CD with AWS Lambda and Amazon API Gateway (SRV355-R1) -...
 
Introduction to the Well-Architected Framework and Tool - SVC208 - Anaheim AW...
Introduction to the Well-Architected Framework and Tool - SVC208 - Anaheim AW...Introduction to the Well-Architected Framework and Tool - SVC208 - Anaheim AW...
Introduction to the Well-Architected Framework and Tool - SVC208 - Anaheim AW...
 
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門20180613 AWS Black Belt Online Seminar AWS Cloud9 入門
20180613 AWS Black Belt Online Seminar AWS Cloud9 入門
 
Serverless Architectures.pdf
Serverless Architectures.pdfServerless Architectures.pdf
Serverless Architectures.pdf
 
20210119 AWS Black Belt Online Seminar AWS CloudTrail
20210119 AWS Black Belt Online Seminar AWS CloudTrail20210119 AWS Black Belt Online Seminar AWS CloudTrail
20210119 AWS Black Belt Online Seminar AWS CloudTrail
 

Similar to Modern application architectures

Track 3 Session 2_從傳統 legacy 邁向數位化與現代化架構
Track 3 Session 2_從傳統  legacy  邁向數位化與現代化架構Track 3 Session 2_從傳統  legacy  邁向數位化與現代化架構
Track 3 Session 2_從傳統 legacy 邁向數位化與現代化架構
Amazon Web Services
 

Similar to Modern application architectures (20)

Developing Modern Applications in the Cloud
Developing Modern Applications in the CloudDeveloping Modern Applications in the Cloud
Developing Modern Applications in the Cloud
 
Developing Modern Applications in the Cloud
Developing Modern Applications in the CloudDeveloping Modern Applications in the Cloud
Developing Modern Applications in the Cloud
 
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 - The New Normal
Amazon Web Services - The New NormalAmazon Web Services - The New Normal
Amazon Web Services - The New Normal
 
Serverless - State of the Union
Serverless - State of the UnionServerless - State of the Union
Serverless - State of the Union
 
Modern Applications Development on AWS
Modern Applications Development on AWSModern Applications Development on AWS
Modern Applications Development on AWS
 
Rearchitecting for Innovation.pdf
Rearchitecting for Innovation.pdfRearchitecting for Innovation.pdf
Rearchitecting for Innovation.pdf
 
AWSome Day Singapore Keynote 2015
AWSome Day Singapore Keynote 2015AWSome Day Singapore Keynote 2015
AWSome Day Singapore Keynote 2015
 
AWS Empowering Digital Marketing - September 2013
AWS Empowering Digital Marketing - September 2013AWS Empowering Digital Marketing - September 2013
AWS Empowering Digital Marketing - September 2013
 
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
[AWS Dev Day] 기조연설 – Olivier Klein AWS 신기술 부문 책임자, 정성권 삼성전자 수석
 
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
 
Keynote & Introduction
Keynote & IntroductionKeynote & Introduction
Keynote & Introduction
 
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft BroadridgeAWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
 
AWSome Day Indonesia Keynote 2015
AWSome Day Indonesia Keynote 2015AWSome Day Indonesia Keynote 2015
AWSome Day Indonesia Keynote 2015
 
Track 3 Session 2_從傳統 legacy 邁向數位化與現代化架構
Track 3 Session 2_從傳統  legacy  邁向數位化與現代化架構Track 3 Session 2_從傳統  legacy  邁向數位化與現代化架構
Track 3 Session 2_從傳統 legacy 邁向數位化與現代化架構
 
Introduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web ServicesIntroduction to Cloud Computing with Amazon Web Services
Introduction to Cloud Computing with Amazon Web Services
 
APN_Live_20190722_Introduction_to_SA
APN_Live_20190722_Introduction_to_SAAPN_Live_20190722_Introduction_to_SA
APN_Live_20190722_Introduction_to_SA
 
A Multi-Company Perspective: Enterprise Cloud and PaaS
A Multi-Company Perspective: Enterprise Cloud and PaaSA Multi-Company Perspective: Enterprise Cloud and PaaS
A Multi-Company Perspective: Enterprise Cloud and PaaS
 
Optimizing Costs as You Scale on AWS - ENT302 - re:Invent 2017
Optimizing Costs as You Scale on AWS - ENT302 - re:Invent 2017Optimizing Costs as You Scale on AWS - ENT302 - re:Invent 2017
Optimizing Costs as You Scale on AWS - ENT302 - re:Invent 2017
 
ENT203-Building a Solid Business Case for Cloud Migration.pdf
ENT203-Building a Solid Business Case for Cloud Migration.pdfENT203-Building a Solid Business Case for Cloud Migration.pdf
ENT203-Building a Solid Business Case for Cloud Migration.pdf
 

More from 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
 
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
 

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
 

Modern application architectures

  • 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Developing Modern Applications in the Cloud M A P 0 0 1 IAN MASSINGHAM | DIRECTOR, DEVELOPER TECHNOLOGY & EVANGELISM | AMAZON WEB SERVICES ianm@amazon.com | @IanMmmm ANN LEDWITH | DIRECTOR, SERVICE FABRIC CORE, DELIVERY ENABLEMENT & BUILDERS’ TOOLS | SAGE
  • 2. The new normal: companies are increasingly global and products are completely digital 47% of CEOs said they are being challenged by the board of directors to make progress in digital business Source: Gartner 79% of CIOs believe that digital business is making their IT organizations better prepared to change 67% of all business leaders believe that they must pick up the pace of digitalization to remain competitive
  • 3. To maintain competitive advantage, digital businesses must innovate as rapidly as possible FeedbackIdeas Experiment Innovation Flywheel
  • 4. Invention requires two things: the ability to try a lot of experiments, and not having to live with the collateral damage of failed experiments.“ Andy Jassy CEO, Amazon Web Services
  • 5. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. OLD WORLD IT Employees at work Factories + supply chainSales channels Marketing analytics
  • 6. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Employees at work Factories + supply chainSales channels Marketing analytics OLD WORLD IT NEW WORLD IT
  • 7. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. NEW WORLD IT Employees at work Factories + supply chain IoT connected things Online marketing Continuous supply tracking Just in time production Online sales + delivery Social media
  • 8. Becoming data driven New channels direct to customer More things, more scale, rapid change New Needs
  • 9. Modern application development creates competitive differentiation by enabling rapid innovation
  • 10. AWS customers are pioneering modern applications
  • 11. Capabilities of a modern application Secure Resilient Elastic Modular Automated Interoperable
  • 12. Assess and prioritize, app by app Pick path to modernization Lift & shift: data center → EC2 Re-platform: VMs → containers Refactor: monolith → microservices Re-invent: host fleets → serverless Modern application development: a journey with many paths
  • 13. Options Available Re-platform AWS Fargate Re-invent AWS Lambda Re-factor AWS Step Functions Re-Host Amazon EC2
  • 14. migrated ~850 applications running in ~5000 containers to Fargate to reduce the undifferentiated heavy lifting that came with managing Kubernetes Re-platform AWS Fargate
  • 15. created a serverless stock trade validation system in 3 months that improved processing times by 67% while reducing costs by 50% Re-invent AWS Lambda
  • 16. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Modern application checklist £ Enable security and compliance across the entire app lifecycle £ Structure apps as collections of microservices £ Build with serverless technologies as much as possible £ Use code to model applications and infrastructure £ Rapidly release high-quality features with CI/CD £ Gain insights into application behavior with monitoring
  • 17. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 18. Enable security and compliance across the entire app lifecycle Securing the lifecycle addresses blind spots without slowing down innovation Authenticate Authorize Audit & Govern Validate Prevent unauthorized access with strong access control Implement role-based access control using flexible policies Evaluate app behavior & ensure compliance requirements are met Verify each step to ensure solutions work only as intended
  • 19. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 20. Structure apps as collections of microservices When the impact of change is small, release velocity can increase Monolithic application Does everything Shared release pipeline Rigid scaling High impact of change Hard to adopt new technologies Microservices Does one thing Independent deployments Independent scaling Small impact of change Choice of technology
  • 21. Structure apps as collections of microservices When the impact of change is small, release velocity can increase Microservices Do one thing – Well
  • 22. Structure apps as collections of microservices Properties of microservices Microservices • Independent • Individually Deployed & Scaled • Polyglot • Modular - Easily Replaced • Decentralized
  • 23. Structure apps as collections of microservices Design Concepts • Use managed services • Focus on writing your business logic (not on maintaining infrastructure) • Loosely coupled & event driven • Simplify delivery and discovery AWS Lambda AWS Fargate
  • 24. Structure apps as collections of microservices APIs and decoupled communications enable automation and improves reliability FUNCTION API API MICROSERVICE FUNCTION EVENT API MICROSERVICE EVENT API MICROSERVICE APPLICATION
  • 25. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 26. Databases in Modern Applications Relational Key-value DynamoDBAmazon RDS Aurora CommercialCommunity
  • 28. Common data categories and use cases Relational Referential integrity, ACID transactions, schema- on-write Lift and shift, ERP, CRM, finance Key-value High throughput, low- latency reads and writes, endless scale Real-time bidding, shopping cart, social, product catalog, customer preferences Document Store documents and quickly access querying on any attribute Content management, personalization, mobile In-memory Query by key with microsecond latency Leaderboards, real-time analytics, caching Graph Quickly and easily create and navigate relationships between data Fraud detection, social networking, recommendation engine Time-series Collect, store, and process data sequenced by time IoT applications, event tracking Ledger Complete, immutable, and verifiable history of all changes to application data Systems of record, supply chain, health care, registrations, financial
  • 29. Purpose-built databases Relational Key-value Document In-memory Graph Time-series Ledger DynamoDB NeptuneAmazon RDS Aurora CommercialCommunity Timestream QuantumElastiCacheDocumentDB
  • 30. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 31. Build with serverless technologies as much as possible Automation and abstraction frees you No infrastructure to provision or manage Automatically scales by unit of consumption Pay for value billing model Highly available and durable
  • 32. Build with serverless technologies as much as possible Choice of compute is core to the transformation Serverless Containers Long-running Abstracts the OS Fully-managed orchestration Fully-managed cluster scaling AWS Fargate Serverless Functions Event-driven Many language runtimes Data source integrations No server management AWS Lambda
  • 33. Build with serverless technologies as much as possible AWS container services landscape Management Deployment, Scheduling, Scaling & Management of containerized applications Hosting Where the containers run Amazon Elastic Container Service Amazon Elastic Container Service for Kubernetes Amazon EC2 AWS Fargate Image Registry Container Image Repository Amazon Elastic Container Registry
  • 34. Build with serverless technologies as much as possible Choice of compute is core to the transformation Serverless Containers Long-running Abstracts the OS Fully-managed orchestration Fully-managed cluster scaling AWS Fargate Serverless Functions Event-driven Many language runtimes Data source integrations No server management AWS Lambda
  • 35. Build with serverless technologies as much as possible Comparison of operational responsibility AWS Lambda Serverless functions AWS Fargate Serverless containers ECS/EKS Container-management as a service EC2 Infrastructure-as-a-Service More opinionated Less opinionated AWS manages You manage • Data source integrations • Physical hardware, software, networking, and facilities • Provisioning • Application code • Container orchestration, provisioning • Cluster scaling • Physical hardware, host OS/kernel, networking, and facilities • Application code • Data source integrations • Security config and updates, network config, management tasks • Container orchestration control plane • Physical hardware software, networking, and facilities • Application code • Data source integrations • Work clusters • Security config and updates, network config, firewall, management tasks • Physical hardware software, networking, and facilities • Application code • Data source integrations • Scaling • Security config and updates, network config, management tasks • Provisioning, managing scaling and patching of servers
  • 36. Build with serverless technologies as much as possible Serverless architectures provide the greatest agility with the least effort Focus on creating business value Remove heavy lifting with serverless everything CUSTOMER AWS Messaging & Orchestration Compute Physical Infrastructure API Business logic Storage & Databases
  • 37. Build with serverless technologies as much as possible Amazon API Gateway Fully managed service that makes it easy for developers to publish, maintain, monitor, and secure APIs at any scale • Native AWS Service Integration • Stage and version management • API Authentication • WebSockets support
  • 38. Build with serverless technologies as much as possible Coordinating multiple services with workflows increases agility, productivity and flexibility Track status of data and execution Remove redundant code
  • 39. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 40. Use code to model applications and infrastructure Treating everything as software increases the speed and agility of infrastructure deployments Design Write application code Create infrastructure templates Create stacks Iterate
  • 41. Use code to model applications and infrastructure Infrastructure as code Declarative I tell you what I need I tell you what to do Imperative
  • 42. Use code to model applications and infrastructure Infrastructure as code goals 1. Make infrastructure changes repeatable and predictable 2. Release infrastructure changes using the same tools as code changes 3. Replicate production environment in a staging environment to enable continuous testing
  • 43. Use code to model applications and infrastructure Model function environments with AWS Serverless Application Model (SAM) • Open source framework for building serverless applications on AWS • Shorthand syntax to express functions, APIs, databases, and event source mappings • Transforms and expands SAM syntax into AWS CloudFormation syntax on deployment • Supports all AWS CloudFormation resource types https://aws.amazon.com/serverless/sam/
  • 44. Use code to model applications and infrastructure SAM template AWSTemplateFormatVersion: '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Resources: GetFunction: Type: AWS::Serverless::Function Properties: Handler: index.get Runtime: nodejs8.10 CodeUri: src/ Policies: - DynamoDBReadPolicy: TableName: !Ref MyTable Events: GetResource: Type: Api Properties: Path: /resource/{resourceId} Method: get MyTable: Type: AWS::Serverless::SimpleTable Just 20 lines to create: • Lambda function • IAM role • API Gateway • DynamoDB table
  • 45. Use code to model applications and infrastructure Use SAM CLI to package and deploy SAM templates pip install --user aws-sam-cli sam logs sam validate sam local sam init sam build (--use-container) sam package sam deploy sam publish New
  • 46. Use code to model applications and infrastructure Nested apps to simplify solving recurring problems Standard Component TweetSource: Type: AWS::Serverless::Application Properties: Location: ApplicationId: arn:aws:serverlessrepo:... SemanticVersion: 2.0.0 Parameters: TweetProcessorFunctionName: !Ref MyFunction SearchText: '#serverless -filter:nativeretweets’ Custom Business Logic
  • 47. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 48. Rapidly release high-quality features with CI/CD Teams that practice CI/CD ship more code faster, and with more confidence Source: Puppet 2017 State of DevOps Report 5x Lower change failure rate 440x Faster from commit to deploy 46x More frequent deployments 44% More time spent on new features & code
  • 49. Rapidly release high-quality features with CI/CD Monolith development lifecycle monitorreleasetestbuild developers delivery pipelines services
  • 50. ??? developers delivery pipelines services Rapidly release high-quality features with CI/CD Monolith development lifecycle
  • 52. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Enabling rapid innovation at Sage M A P 0 0 1 ANN LEDWITH | DIRECTOR, SERVICE FABRIC CORE, DELIVERY ENABLEMENT & BUILDERS’ TOOLS | SAGE
  • 53. © 2019 The Sage Group plc or its licensors. All rights reserved. We help every type of business thrive Advertising Chemicals Construction Food and Drink Marketing Professional Services Financial Services Distribution Human Resources Trades Aerospace Wholesale Logistics Credit And more… Small Businesses Medium Businesses Large Businesses Businesses of every size Businesses of every type
  • 54. © 2019 The Sage Group plc or its licensors. All rights reserved.© 2018 The Sage Group plc or its licensors. All rights reserved. Sage by numbers 5/7/19 54 Market • Sage Business Cloud growth of 51%* • 27.8% operating margin* • Market cap of c. £6bn* • Ecosystem of over 40,000 partners • Over 28 Million people worldwide (1 in 3 UK) paid by Sage Payroll • Move $4.2 Trillion annually through Sage software • Market Leader in Canada, UK, Ireland, Spain, France, Spain, Switzerland, Poland and Africa • Strong Presence in North America, Germany, Asia and Brazil • Presence in 23 countries 13,000 Global company with over colleagues Financials £1,819m Organic revenue of FY18 Customers 3 million Over Business customers worldwide *Data for FY18 financial results ending 30th September 2018
  • 55. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Delivery Enablement and Builder’s Tools
  • 56. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 57. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Quick start blueprints: • Boilerplate Application Source Code • Boilerplate Test Code • ‘Stack’ Infrastructure as Code • ‘Delivery’ Infrastructure as Code: • CI Pipelines • Deployment Pipelines Blueprint deploy Infrastructure Applicationtestbuild blueprint
  • 58. Emergency only – use in case of demo gremlins!
  • 59. FeedbackIdeas Experiment Innovation Flywheel “Invention requires two things: the ability to try a lot of experiments, and not having to live with the collateral damage of failed experiments.“
  • 60. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 61. Use monitoring to optimize end user experience The faster you identify issues, the faster they can be resolved Metrics, logs and traces Monitoring, debugging and alerts Resource and application visibility Real-time insights MONITORING OBSERVABILITY
  • 63. S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 64. Benefits of using AWS X-Ray with Lambda • X-Ray agent is natively built into Lambda. • Identify initialization and cold starts in Lambda • Pinpoint issues in downstream services called from your AWS Lambda function. • Happens with low latency in real-time. Can see traces in seconds.
  • 65. Visualize Service Call Graph (Lambda)
  • 66. Identify initialization & cold starts (Lambda)
  • 68. Keeps track of all your application components, their locations, attributes, and health status. • Define convenient names for all cloud resources • Discover resources with specific attributes • Ensure only healthy resources are discovered • Use highly available DNS and Regional API. New: AWS Cloud Map
  • 69. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T So how do we build modern apps? £ Build security and compliance into the entire app lifecycle £ Structure apps as collections of microservices £ Build with serverless technologies as much as possible £ Use code to model applications and infrastructure £ Rapidly release high-quality features with CI/CD £ Gain insights into application behavior with monitoring
  • 70. Thank you! S U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. IAN MASSINGHAM | DIRECTOR, DEVELOPER TECHNOLOGY & EVANGELISM | AMAZON WEB SERVICES ianm@amazon.com | @IanMmmm ANN LEDWITH | DIRECTOR, SERVICE FABRIC CORE, DELIVERY ENABLEMENT & BUILDERS’ TOOLS | SAGE
  • 71. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I TS U M M I T © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.