SlideShare une entreprise Scribd logo
1  sur  38
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Architectural Patterns
Monica Lora
Johannes Verwijnen
Solutions Architect, AWS
CTO, Aino Health
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
• Serverless Foundations
• Serverless Architectural patterns:
o Web Application
o Data Lake
o Stream processing
o Automation
AWS
Lambda
Amazon
Kinesis
Amazon
S3
Amazon API
Gateway
Amazon
SQS
Amazon
DynamoDB
AWS IoT
Amazon
Cognito
Amazon
CloudWatch
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Means…
No servers to provision
or manage
Scales with usage
Never pay for idle Built-in availability and
fault tolerance
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Common Serverless Application Use Cases
Web applications
•Static websites
•Complex web apps
•Packages for Flask
and Express
Data processing
•Real time
•MapReduce
•Batch
•Machine learning
inference
Chatbots
•Powering chatbot
logic
Backends
•Apps and services
•Mobile
•IoT
</></>
Amazon Alexa
•Powering voice-
enabled apps
•Alexa
Skills Kit
IT automation
•Policy engines
•Extending AWS
services
•Infrastructure
management
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Pattern 1: Web App/Microservice/API
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Web Application
Data stored in
Amazon DynamoDB
Dynamic content in
AWS Lambda
Amazon API Gateway
Browser
Amazon
CloudFront
Amazon S3 Amazon Cognito
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Web Application - Security
Amazon API
Gateway
AWS
Lambda
Amazon
DynamoDB
Amazon
S3
Amazon
CloudFront
• Bucket Policies
• ACLs
• OAI
• Geo-Restriction
• Signed Cookies
• Signed URLs
• DDoS Protection
IAM
AuthZ
IAM
• Throttling
• Caching
• Usage Plans
• ACM
Static Content
Browser
Amazon Cognito
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Web Application - Security
Amazon API
Gateway
AWS
Lambda
Amazon
DynamoDB
Amazon
S3
Amazon
CloudFront
• Bucket Policies
• ACLs
• OAI
• Geo-Restriction
• Signed Cookies
• Signed URLs
• DDOS
IAM
AuthZ
IAM
• Throttling
• Caching
• Usage Plans
Static Content
Browser
Amazon
CloudFront
• HTTPS
• Disable Host
Header Forwarding
AWS WAF
Amazon Cognito
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Web Application - Monitoring
Amazon API
Gateway
AWS
Lambda
Amazon
DynamoDB
Amazon
S3
Amazon
CloudFront
• Access Logs in S3 Bucket
• Access Logs in S3
Bucket
• CloudWatch Metrics-
https://aws.amazon.com/
cloudfront/reporting/
AWS WAF
• WebACL Testing
• Total Requests
• Allowed/Blocked
Requests by ACL
logs
logs
• Invocations
• Invocation Errors
• Duration
• Throttled Invocations
• Latency
• Throughput
• Throttled Reqs
• Returned Bytes
• Documentation
• Latency
• Count
• Cache Hit/Miss
• 4XX/5XX Errors
Streams
AWS
CloudTrail
Static Content
Browser
Custom CloudWatch
Metrics & Alarms
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless Web Application Lifecycle Management
AWS SAM (Serverless Application Model)
AWS
Lambda
Amazon API
Gateway
AWS
CloudFormation
Amazon
S3
Amazon
DynamoDBPackage &
Deploy
Code/Packages/
Swagger
Serverless
Template
Serverless
Template
w/ CodeUri
package deploy
CI/CD Tools
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Bustle Achieves 84% Cost Savings with AWS Lambda
Bustle is a news, entertainment, lifestyle, and fashion website
targeted towards women.
With AWS Lambda, we eliminate the
need to worry about operations
Tyler Love
CTO, Bustle
”
“
•Bustle had trouble scaling and maintaining high
availability for its website without heavy
management
•Moved to serverless architecture using AWS Lambda
and Amazon API Gateway
•Experienced approximately 84% in cost savings
•Engineers are now focused on innovation
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Pattern 2: Data Lake
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Data Lake Characteristics
• Collect/Store/Process/Consume and Analyze all organizational data
• Structured/Semi-Structured/Unstructured data
• AI/ML and BI/Analytical use cases
• Fast automated ingestion
• Schema on Read
• Complementary to EDW
• Decoupled Compute and Storage
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Serverless Data Lake
S3
Bucket(s)
Key
Management
Service
Amazon
Athena
AWS
CloudTrail
Amazon
Cognito
AWS
IAM
Amazon
Kinesis
Streams
Amazon
Kinesis
Firehose
Amazon ES
Amazon
QuickSight
AWS
Glue
Amazon
DynamoDB
Amazon
Macie
Amazon API
Gateway
AWS
IAM
Amazon
Redshift
Spectrum
AWS
Direct
Connect
Ingest
Catalog & Search
Security & Auditing
API/UI
Analytics & Processing
AWS
Glue
AWS
Lambda
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Fannie Mae Serverless Financial Modeling
Financial Modeling is a Monte-Carlo simulation process to project future cash flows , which is used for managing the mortgage risk on daily basis:
•Underwriting and valuation
•Risk management
•Financial reporting
•Loss mitigation and loan removal
• ~10 Quadrillion (10#10$%) of cash flow
projections each month in hundreds
of economic scenarios.
• One simulation run of ~ 20 million
mortgages takes 1.4 hours, >4 times
faster than the existing process.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Pattern 3: Stream Processing
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Stream Processing characteristics
• High ingest rate
• Near real-time processing (low latency from ingest to process)
• Spiky traffic (lots of devices with intermittent network connections)
• Message durability
• Message ordering
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Streaming Data Ingestion
Amazon CloudWatch:
Delivery metrics
Amazon S3:
Buffered files
Kinesis
Agent
Record
Producers Amazon Redshift:
Table loads
Amazon Elasticsearch Service:
Domain loads
Amazon S3:
Source record backup
AWS Lambda:
Transformations &
enrichment
Amazon DynamoDB:
Lookup tables
Raw records
Lookup
Transformed records
Transformed recordsRaw records
Amazon Kinesis Firehose:
Delivery stream
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Sensor data collection
IoT
rules
IoT
actions
MQTT
Amazon S3:
Raw records
Amazon Kinesis Firehose:
Delivery stream
Amazon S3:
Batched records
Amazon Kinesis Streams:
Real-time stream
AWS IoT:
Data collection
IoT Sensors
Real-time analytics
applications
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Real-time analytics
Amazon Kinesis Streams:
Ingest stream
Amazon Kinesis Analytics:
Time window aggregation
Amazon Kinesis Streams:
Aggregates stream
Amazon Kinesis Firehose:
Error stream
Amazon S3:
Error records
Record
Producers
AWS Lambda:
Alert function
Amazon DynamoDB:
Device thresholds
AWS SNS:
Notifications
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thomson Reuters – Product Insight
Solution for usage analysis tracking:
Capture, analyze, and visualize analytics data generated by offerings, providing insights to help product
teams continuously improve the user experience
Throughput: Tested 4,000 requests / second
Growing to 10,000 requests / second or 25 Billion requests / month
Latency: new events to user dashboards in less than 10 seconds
Durable: no data loss since inception
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Pattern 4: Automation
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automation characteristics
•Periodic jobs
•Event triggered workflows
•Enforce security policies
•Auditing and notification
•Respond to alarms
•Extend AWS functionality
•…All while being Highly Available and Scalable
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Ops Automator
Amazon CloudWatch:
Time-based events
AWS Lambda:
Event handler
AWS Lambda:
Task executors
AWS SNS:
Error and warning notifications
Resources in multiple
AWS Regions and
Accounts
Amazon EC2 Instances
Amazon DynamoDB:
Task configuration & tracking
Amazon CloudWatch:
Logs
Amazon Redshift Clusters
https://aws.amazon.com/answers/infrastructure-management/ops-automator/
Tags
OpsAutomatorTaskList CreateSnapshot
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Health
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Aino Health Background
Founded in 1994(!)
We provide employee absence and wellbeing management via web-based tools.
Rapid internationalization planned from 2016 onwards
Listed on NASDAQ Stockholm First North December 2016
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The Challenge
Existing old-fashioned monolithic web server system (Spring/Hibernate/MySQL)
Main targets from strategy:
Scalability (50’000 -> millions users)
Security (personal data, partially sensitive)
Time to market (configurability and development speed)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The Solutions
Concentrate all infrastructure on AWS
Develop everything as serverless
Always utilize AWS managed services when possible
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Scalability
Concentrate all infrastructure on AWS
• We’re not the biggest fish in the pond
Develop everything as serverless
• We ought to get near-linear scalability
Always utilize AWS managed services when possible
• We trust AWS to work with services’ scalability issues in a more efficient way than us
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Security
Concentrate all infrastructure on AWS
• We would never be able to provide the kind of security measures AWS does in its data centers
Develop everything as serverless
• Proper granularity of code makes it more readable and secure
Always utilize AWS managed services when possible
• We trust AWS to work with services’ security issues in a more efficient way than us
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Time to Market
Concentrate all infrastructure on AWS
• Immediate provisioning of infrastructure
Develop everything as serverless
• Concentrate on business logic code
Always utilize AWS managed services when possible
• Get ready-made functionality
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Overview of Solution
Security Core business services
DynamoDBCognitoCloud Directory
Step Functions
User interfaces
API Gateway
Service A Service B Service C
Supportive services, DevOps, etc.
S3
VPC
CloudFront X-Ray
CloudTrail
IAM
WAF
Shield
SES
Route 53
ElastiCache
CloudFormation
Meta
...
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Takeaways
When evaluating the various AWS services we decided on a “try it but fail fast”-methodology
Service limits do get in the way. Soft, “hard” and hard limits. Note that managed services might hit upon the limits of
underlying services.
Engagement with product management actually makes many of your worries go away.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Summary
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Lambda Best Practices
•Minimize package size to necessities
•Separate the Lambda handler from core logic
•Use Environment Variables to modify operational behavior
•Self-contain dependencies in your function package
•Leverage “Max Memory Used” to right-size your functions
•Delete large unused functions (75GB limit)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Recommendations
Use DevOps tools to automate your serverless deployments
Apply serverless patterns for common use-cases:
•Web application
•Data Lake Foundation
•Stream processing
•Operations automation
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Please complete the session survey in the summit mobile app.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!
What will you build with Serverless?

Contenu connexe

Tendances

Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018Amazon Web Services
 
Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...
Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...
Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...Amazon Web Services
 
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018Amazon Web Services
 
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...Amazon Web Services
 
Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018
Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018
Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018Amazon Web Services
 
Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...
Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...
Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...Amazon Web Services
 
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018Amazon Web Services
 
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018Amazon Web Services
 
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018
Unlocking Software Innovation with AWS - Adrian White - AWS TechShift ANZ 2018Amazon Web Services
 
AWS Systems Manage: Bridging Operational Models
AWS Systems Manage: Bridging Operational Models AWS Systems Manage: Bridging Operational Models
AWS Systems Manage: Bridging Operational Models Amazon Web Services
 
Building Real-Time Serverless Backends with GraphQL
Building Real-Time Serverless Backends with GraphQLBuilding Real-Time Serverless Backends with GraphQL
Building Real-Time Serverless Backends with GraphQLAmazon Web Services
 
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...Amazon Web Services
 
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...Amazon Web Services
 
Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018
Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018
Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018Amazon Web Services
 
Product Development in the Cloud
Product Development in the Cloud Product Development in the Cloud
Product Development in the Cloud Amazon Web Services
 
How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...
How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...
How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...Amazon Web Services
 
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
 ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre... ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...Amazon Web Services
 
DEM04 Fearless: From Monolith to Serverless with Dynatrace
DEM04 Fearless: From Monolith to Serverless with DynatraceDEM04 Fearless: From Monolith to Serverless with Dynatrace
DEM04 Fearless: From Monolith to Serverless with DynatraceAmazon Web Services
 

Tendances (20)

Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
Continuous Integration Best Practices (DEV319-R1) - AWS re:Invent 2018
 
Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...
Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...
Save Money and Migrate Faster with Rapid Discovery and Analysis (ENT331) - AW...
 
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
Serverless:It All Started in Vegas (DVC306) - AWS re:Invent 2018
 
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
 
Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018
Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018
Security, Risk and Compliance of Your Cloud Journey - Tel Aviv Summit 2018
 
Amazon Container Services
Amazon Container ServicesAmazon Container Services
Amazon Container Services
 
Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...
Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...
Build a Searchable Media Library & Moderate Content at Scale Using Machine Le...
 
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
Optimizing Costs as You Scale on AWS (ENT302) - AWS re:Invent 2018
 
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
Enterprise DevOps: Patterns of Efficiency (ENT311-R1) - AWS re:Invent 2018
 
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
 
BDA310 Transcribe and Translate
BDA310 Transcribe and TranslateBDA310 Transcribe and Translate
BDA310 Transcribe and Translate
 
AWS Systems Manage: Bridging Operational Models
AWS Systems Manage: Bridging Operational Models AWS Systems Manage: Bridging Operational Models
AWS Systems Manage: Bridging Operational Models
 
Building Real-Time Serverless Backends with GraphQL
Building Real-Time Serverless Backends with GraphQLBuilding Real-Time Serverless Backends with GraphQL
Building Real-Time Serverless Backends with GraphQL
 
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
 
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
Develop Cross-Platform Mobile Apps with React Native, GraphQL, & AWS (MOB324)...
 
Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018
Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018
Moving to DevOps the Amazon Way (DEV210-R1) - AWS re:Invent 2018
 
Product Development in the Cloud
Product Development in the Cloud Product Development in the Cloud
Product Development in the Cloud
 
How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...
How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...
How Rovio Uses Amazon CloudFront for Secure API Acceleration (CTD315) - AWS r...
 
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
 ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre... ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
 
DEM04 Fearless: From Monolith to Serverless with Dynatrace
DEM04 Fearless: From Monolith to Serverless with DynatraceDEM04 Fearless: From Monolith to Serverless with Dynatrace
DEM04 Fearless: From Monolith to Serverless with Dynatrace
 

Similaire à Serverless Architectural Patterns

Serverless Architectural Patterns
Serverless Architectural PatternsServerless Architectural Patterns
Serverless Architectural PatternsMonica Lora
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesAmazon Web Services
 
Building Serverless Enterprise Applications - SRV315 - Anaheim AWS Summit
Building Serverless Enterprise Applications - SRV315 - Anaheim AWS SummitBuilding Serverless Enterprise Applications - SRV315 - Anaheim AWS Summit
Building Serverless Enterprise Applications - SRV315 - Anaheim AWS SummitAmazon Web Services
 
Serverless Architectural Patterns
Serverless Architectural PatternsServerless Architectural Patterns
Serverless Architectural PatternsAmazon Web Services
 
Serverless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventServerless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventBoaz Ziniman
 
Build Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS SummitBuild Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS SummitAmazon Web Services
 
Scaling from zero to millions of users
Scaling from zero to millions of usersScaling from zero to millions of users
Scaling from zero to millions of usersAmazon Web Services
 
Getting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and ServerlessGetting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and ServerlessAmazon Web Services
 
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...Amazon Web Services
 
Serverless Architectural Patterns - ServerlessDays TLV
Serverless Architectural Patterns - ServerlessDays TLVServerless Architectural Patterns - ServerlessDays TLV
Serverless Architectural Patterns - ServerlessDays TLVBoaz Ziniman
 
Serverless on AWS: Architectural Patterns and Best Practices
Serverless on AWS: Architectural Patterns and Best PracticesServerless on AWS: Architectural Patterns and Best Practices
Serverless on AWS: Architectural Patterns and Best PracticesVladimir Simek
 
Build Enterprise-Grade Serverless Apps
Build Enterprise-Grade Serverless Apps Build Enterprise-Grade Serverless Apps
Build Enterprise-Grade Serverless Apps Amazon Web Services
 
Getting Started with AWS Lambda Serverless Computing
Getting Started with AWS Lambda Serverless ComputingGetting Started with AWS Lambda Serverless Computing
Getting Started with AWS Lambda Serverless ComputingAmazon Web Services
 
Getting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdf
Getting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdfGetting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdf
Getting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdfAmazon Web Services
 
Serverless Architecture - Design Patterns and Best Practices
Serverless Architecture - Design Patterns and Best PracticesServerless Architecture - Design Patterns and Best Practices
Serverless Architecture - Design Patterns and Best PracticesAmazon Web Services
 
Serverless Architectural Patterns - GOTO Amsterdam
Serverless Architectural Patterns - GOTO AmsterdamServerless Architectural Patterns - GOTO Amsterdam
Serverless Architectural Patterns - GOTO AmsterdamBoaz Ziniman
 
Serverless Architectural Patterns 
and Best Practices - Madhu Shekar - AWS
Serverless Architectural Patterns 
and Best Practices - Madhu Shekar - AWSServerless Architectural Patterns 
and Best Practices - Madhu Shekar - AWS
Serverless Architectural Patterns 
and Best Practices - Madhu Shekar - AWSCodeOps Technologies LLP
 
Serverless SaaS apllications on AWS
Serverless SaaS apllications on AWSServerless SaaS apllications on AWS
Serverless SaaS apllications on AWSAmazon Web Services
 
Build and Deploy Serverless Applications with AWS SAM
Build and Deploy Serverless Applications with AWS SAM Build and Deploy Serverless Applications with AWS SAM
Build and Deploy Serverless Applications with AWS SAM Amazon Web Services
 
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...AWS Riyadh User Group
 

Similaire à Serverless Architectural Patterns (20)

Serverless Architectural Patterns
Serverless Architectural PatternsServerless Architectural Patterns
Serverless Architectural Patterns
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Building Serverless Enterprise Applications - SRV315 - Anaheim AWS Summit
Building Serverless Enterprise Applications - SRV315 - Anaheim AWS SummitBuilding Serverless Enterprise Applications - SRV315 - Anaheim AWS Summit
Building Serverless Enterprise Applications - SRV315 - Anaheim AWS Summit
 
Serverless Architectural Patterns
Serverless Architectural PatternsServerless Architectural Patterns
Serverless Architectural Patterns
 
Serverless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventServerless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless Event
 
Build Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS SummitBuild Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS Summit
Build Enterprise-Grade Serverless Apps - SRV315 - Atlanta AWS Summit
 
Scaling from zero to millions of users
Scaling from zero to millions of usersScaling from zero to millions of users
Scaling from zero to millions of users
 
Getting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and ServerlessGetting Started with AWS Lambda and Serverless
Getting Started with AWS Lambda and Serverless
 
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...
 
Serverless Architectural Patterns - ServerlessDays TLV
Serverless Architectural Patterns - ServerlessDays TLVServerless Architectural Patterns - ServerlessDays TLV
Serverless Architectural Patterns - ServerlessDays TLV
 
Serverless on AWS: Architectural Patterns and Best Practices
Serverless on AWS: Architectural Patterns and Best PracticesServerless on AWS: Architectural Patterns and Best Practices
Serverless on AWS: Architectural Patterns and Best Practices
 
Build Enterprise-Grade Serverless Apps
Build Enterprise-Grade Serverless Apps Build Enterprise-Grade Serverless Apps
Build Enterprise-Grade Serverless Apps
 
Getting Started with AWS Lambda Serverless Computing
Getting Started with AWS Lambda Serverless ComputingGetting Started with AWS Lambda Serverless Computing
Getting Started with AWS Lambda Serverless Computing
 
Getting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdf
Getting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdfGetting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdf
Getting Started with AWS Lambda & Serverless Computing - Kashif Imran.pdf
 
Serverless Architecture - Design Patterns and Best Practices
Serverless Architecture - Design Patterns and Best PracticesServerless Architecture - Design Patterns and Best Practices
Serverless Architecture - Design Patterns and Best Practices
 
Serverless Architectural Patterns - GOTO Amsterdam
Serverless Architectural Patterns - GOTO AmsterdamServerless Architectural Patterns - GOTO Amsterdam
Serverless Architectural Patterns - GOTO Amsterdam
 
Serverless Architectural Patterns 
and Best Practices - Madhu Shekar - AWS
Serverless Architectural Patterns 
and Best Practices - Madhu Shekar - AWSServerless Architectural Patterns 
and Best Practices - Madhu Shekar - AWS
Serverless Architectural Patterns 
and Best Practices - Madhu Shekar - AWS
 
Serverless SaaS apllications on AWS
Serverless SaaS apllications on AWSServerless SaaS apllications on AWS
Serverless SaaS apllications on AWS
 
Build and Deploy Serverless Applications with AWS SAM
Build and Deploy Serverless Applications with AWS SAM Build and Deploy Serverless Applications with AWS SAM
Build and Deploy Serverless Applications with AWS SAM
 
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
 

Plus de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon 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 AWSAmazon 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 DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Plus de 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
 

Serverless Architectural Patterns

  • 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Architectural Patterns Monica Lora Johannes Verwijnen Solutions Architect, AWS CTO, Aino Health
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda • Serverless Foundations • Serverless Architectural patterns: o Web Application o Data Lake o Stream processing o Automation AWS Lambda Amazon Kinesis Amazon S3 Amazon API Gateway Amazon SQS Amazon DynamoDB AWS IoT Amazon Cognito Amazon CloudWatch
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Means… No servers to provision or manage Scales with usage Never pay for idle Built-in availability and fault tolerance
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Common Serverless Application Use Cases Web applications •Static websites •Complex web apps •Packages for Flask and Express Data processing •Real time •MapReduce •Batch •Machine learning inference Chatbots •Powering chatbot logic Backends •Apps and services •Mobile •IoT </></> Amazon Alexa •Powering voice- enabled apps •Alexa Skills Kit IT automation •Policy engines •Extending AWS services •Infrastructure management
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pattern 1: Web App/Microservice/API
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Web Application Data stored in Amazon DynamoDB Dynamic content in AWS Lambda Amazon API Gateway Browser Amazon CloudFront Amazon S3 Amazon Cognito
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Web Application - Security Amazon API Gateway AWS Lambda Amazon DynamoDB Amazon S3 Amazon CloudFront • Bucket Policies • ACLs • OAI • Geo-Restriction • Signed Cookies • Signed URLs • DDoS Protection IAM AuthZ IAM • Throttling • Caching • Usage Plans • ACM Static Content Browser Amazon Cognito
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Web Application - Security Amazon API Gateway AWS Lambda Amazon DynamoDB Amazon S3 Amazon CloudFront • Bucket Policies • ACLs • OAI • Geo-Restriction • Signed Cookies • Signed URLs • DDOS IAM AuthZ IAM • Throttling • Caching • Usage Plans Static Content Browser Amazon CloudFront • HTTPS • Disable Host Header Forwarding AWS WAF Amazon Cognito
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Web Application - Monitoring Amazon API Gateway AWS Lambda Amazon DynamoDB Amazon S3 Amazon CloudFront • Access Logs in S3 Bucket • Access Logs in S3 Bucket • CloudWatch Metrics- https://aws.amazon.com/ cloudfront/reporting/ AWS WAF • WebACL Testing • Total Requests • Allowed/Blocked Requests by ACL logs logs • Invocations • Invocation Errors • Duration • Throttled Invocations • Latency • Throughput • Throttled Reqs • Returned Bytes • Documentation • Latency • Count • Cache Hit/Miss • 4XX/5XX Errors Streams AWS CloudTrail Static Content Browser Custom CloudWatch Metrics & Alarms
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless Web Application Lifecycle Management AWS SAM (Serverless Application Model) AWS Lambda Amazon API Gateway AWS CloudFormation Amazon S3 Amazon DynamoDBPackage & Deploy Code/Packages/ Swagger Serverless Template Serverless Template w/ CodeUri package deploy CI/CD Tools
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Bustle Achieves 84% Cost Savings with AWS Lambda Bustle is a news, entertainment, lifestyle, and fashion website targeted towards women. With AWS Lambda, we eliminate the need to worry about operations Tyler Love CTO, Bustle ” “ •Bustle had trouble scaling and maintaining high availability for its website without heavy management •Moved to serverless architecture using AWS Lambda and Amazon API Gateway •Experienced approximately 84% in cost savings •Engineers are now focused on innovation
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pattern 2: Data Lake
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Data Lake Characteristics • Collect/Store/Process/Consume and Analyze all organizational data • Structured/Semi-Structured/Unstructured data • AI/ML and BI/Analytical use cases • Fast automated ingestion • Schema on Read • Complementary to EDW • Decoupled Compute and Storage
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Serverless Data Lake S3 Bucket(s) Key Management Service Amazon Athena AWS CloudTrail Amazon Cognito AWS IAM Amazon Kinesis Streams Amazon Kinesis Firehose Amazon ES Amazon QuickSight AWS Glue Amazon DynamoDB Amazon Macie Amazon API Gateway AWS IAM Amazon Redshift Spectrum AWS Direct Connect Ingest Catalog & Search Security & Auditing API/UI Analytics & Processing AWS Glue AWS Lambda
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Fannie Mae Serverless Financial Modeling Financial Modeling is a Monte-Carlo simulation process to project future cash flows , which is used for managing the mortgage risk on daily basis: •Underwriting and valuation •Risk management •Financial reporting •Loss mitigation and loan removal • ~10 Quadrillion (10#10$%) of cash flow projections each month in hundreds of economic scenarios. • One simulation run of ~ 20 million mortgages takes 1.4 hours, >4 times faster than the existing process.
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pattern 3: Stream Processing
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Stream Processing characteristics • High ingest rate • Near real-time processing (low latency from ingest to process) • Spiky traffic (lots of devices with intermittent network connections) • Message durability • Message ordering
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Streaming Data Ingestion Amazon CloudWatch: Delivery metrics Amazon S3: Buffered files Kinesis Agent Record Producers Amazon Redshift: Table loads Amazon Elasticsearch Service: Domain loads Amazon S3: Source record backup AWS Lambda: Transformations & enrichment Amazon DynamoDB: Lookup tables Raw records Lookup Transformed records Transformed recordsRaw records Amazon Kinesis Firehose: Delivery stream
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Sensor data collection IoT rules IoT actions MQTT Amazon S3: Raw records Amazon Kinesis Firehose: Delivery stream Amazon S3: Batched records Amazon Kinesis Streams: Real-time stream AWS IoT: Data collection IoT Sensors Real-time analytics applications
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Real-time analytics Amazon Kinesis Streams: Ingest stream Amazon Kinesis Analytics: Time window aggregation Amazon Kinesis Streams: Aggregates stream Amazon Kinesis Firehose: Error stream Amazon S3: Error records Record Producers AWS Lambda: Alert function Amazon DynamoDB: Device thresholds AWS SNS: Notifications
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thomson Reuters – Product Insight Solution for usage analysis tracking: Capture, analyze, and visualize analytics data generated by offerings, providing insights to help product teams continuously improve the user experience Throughput: Tested 4,000 requests / second Growing to 10,000 requests / second or 25 Billion requests / month Latency: new events to user dashboards in less than 10 seconds Durable: no data loss since inception
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pattern 4: Automation
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automation characteristics •Periodic jobs •Event triggered workflows •Enforce security policies •Auditing and notification •Respond to alarms •Extend AWS functionality •…All while being Highly Available and Scalable
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Ops Automator Amazon CloudWatch: Time-based events AWS Lambda: Event handler AWS Lambda: Task executors AWS SNS: Error and warning notifications Resources in multiple AWS Regions and Accounts Amazon EC2 Instances Amazon DynamoDB: Task configuration & tracking Amazon CloudWatch: Logs Amazon Redshift Clusters https://aws.amazon.com/answers/infrastructure-management/ops-automator/ Tags OpsAutomatorTaskList CreateSnapshot
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Health
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Aino Health Background Founded in 1994(!) We provide employee absence and wellbeing management via web-based tools. Rapid internationalization planned from 2016 onwards Listed on NASDAQ Stockholm First North December 2016
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The Challenge Existing old-fashioned monolithic web server system (Spring/Hibernate/MySQL) Main targets from strategy: Scalability (50’000 -> millions users) Security (personal data, partially sensitive) Time to market (configurability and development speed)
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The Solutions Concentrate all infrastructure on AWS Develop everything as serverless Always utilize AWS managed services when possible
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Scalability Concentrate all infrastructure on AWS • We’re not the biggest fish in the pond Develop everything as serverless • We ought to get near-linear scalability Always utilize AWS managed services when possible • We trust AWS to work with services’ scalability issues in a more efficient way than us
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Security Concentrate all infrastructure on AWS • We would never be able to provide the kind of security measures AWS does in its data centers Develop everything as serverless • Proper granularity of code makes it more readable and secure Always utilize AWS managed services when possible • We trust AWS to work with services’ security issues in a more efficient way than us
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Time to Market Concentrate all infrastructure on AWS • Immediate provisioning of infrastructure Develop everything as serverless • Concentrate on business logic code Always utilize AWS managed services when possible • Get ready-made functionality
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Overview of Solution Security Core business services DynamoDBCognitoCloud Directory Step Functions User interfaces API Gateway Service A Service B Service C Supportive services, DevOps, etc. S3 VPC CloudFront X-Ray CloudTrail IAM WAF Shield SES Route 53 ElastiCache CloudFormation Meta ...
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Takeaways When evaluating the various AWS services we decided on a “try it but fail fast”-methodology Service limits do get in the way. Soft, “hard” and hard limits. Note that managed services might hit upon the limits of underlying services. Engagement with product management actually makes many of your worries go away.
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Summary
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Lambda Best Practices •Minimize package size to necessities •Separate the Lambda handler from core logic •Use Environment Variables to modify operational behavior •Self-contain dependencies in your function package •Leverage “Max Memory Used” to right-size your functions •Delete large unused functions (75GB limit)
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Recommendations Use DevOps tools to automate your serverless deployments Apply serverless patterns for common use-cases: •Web application •Data Lake Foundation •Stream processing •Operations automation
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Please complete the session survey in the summit mobile app.
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thank you! What will you build with Serverless?