SlideShare ist ein Scribd-Unternehmen logo
1 von 40
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Andrew Baird, Solutions Architect, AWS
August 24, 2016
Getting Started with
Serverless Architectures
Agenda
 Background
 AWS Lambda
 Amazon API Gateway
 Demo
 Serverless Architecture Patterns
 Serverless Best Practices
Background
How serverless architecture patterns with AWS Lambda are the next
evolution of application design
The Monolithic Architecture
The Service Oriented Architecture
Presentation Tier Logic Tier
Data Tier
The Microservices Architecture
Tools to help this pattern are VAST
 Web Servers
 Code Libraries
 Web Service/Application Frameworks
 Configuration Management Tools
 API Management Platforms
 Deployment Patterns
 CI/CD Patterns
 Containers
 Etc. Etc. Etc.
AWS has helped too!
 Amazon EC2
 EC2 Auto-Scaling
 AWS Elastic Load Balancer
 EC2 Auto-Recovery
 AWS Trusted Advisor
 AWS Elastic Beanstalk
 AWS OpsWorks
 AWS EC2 Container Service
 Etc. Etc. Etc.
But….
many of these tools and
innovations are still coupled to
a shared dependency…
Servers (AAHHHHHHHHH!!)
 What size servers are right
for my budget?
 How many users create too
much load for my servers?
 How much remaining
capacity do my servers
have?
 How can I detect if a server
has been compromised?
 How many servers should I
budget for?
 Which OS should my
servers run?
 Which users should have
access to my servers?
 How can I control access
from my servers?
 How will I keep my server
OS patched?
 How will new code be
deployed to my servers?
 How can I increase
utilization of my servers?
 When should I decide to
scale out my servers?
 What size server is right for
my performance?
 Should I tune OS settings
to optimize my application?
 Which packages should be
baked into my server
images?
 When should I decide to
scale up my servers?
 How should I handle server
configuration changes?
 How will the application
handle server hardware
failure?
Architect to be Serverless
Fully Managed
 No provisioning
 Zero administration
 High availability
Developer Productivity
 Focus on the code that
matters
 Innovate rapidly
 Reduce time to market
Continuous Scaling
 Automatically
 Scale up and scale down
AWS Lambda
Serverless, event-driven compute service
Lambda = microservice without servers
Components of Lambda
 A Lambda Function (that you write)
 An Event Source
 The AWS Lambda Service
 The Function Networking Environment
The Lambda Function
 Your Code
(Java, NodeJS, Python)
 The IAM role that code
assumes during execution
 The amount of memory
allocated to your code
(affects CPU and Network
as well)
A valid, complete
Lambda function
An Event Source
 When should your function execute?
 Many AWS services can be an event source today:
• S3
• Kinesis
• SNS
• DynamoDB
• CloudWatch
• Config Rules
• Amazon Echo
• Etc.
• …and Amazon API Gateway (more later)
The AWS Lambda Service
 Runs your function code without you managing or
scaling servers.
 Provides an API to trigger the execution of your function.
 Ensures function is executed when triggered, in parallel,
regardless of scale.
 Provides additional capabilities for your function
(logging, monitoring).
The Function Networking Environment
Default - a default network
environment within VPC is
provided for you
 Access to the internet always
permitted to your function
 No access to VPC-deployed assets
Customer VPC - Your function
executes within the context of
your own VPC.
 Privately communicate with other
resources within your VPC.
 Familiar configuration and behavior
with:
– Subnets
– Elastic Network Interfaces (ENIs)
– EC2 Security Groups
– VPC Route Tables
– NAT Gateway
“Hold on…” – you (maybe)
Lots of existing ways to abstract away servers
 SaaS
 PaaS
 MBaaS
 *aaS
 Application Engines/Platforms
What’s unique about Lambda?
 Abstraction at the code/function level (arbitrary, flexible,
familiar)
 The security model (IAM, VPC)
 The pricing model
 The community
 Integration with the AWS Service ecosystem!
• Scale
• Triggers
Many Serverless Options on AWS
Storage DatabaseNetwork
Compute Content DeliveryMessaging and QueuesSecurity
Gateways
User Management Monitoring & Logging
Internet of Things
Machine Learning
Streaming Analytics
Example Serverless
Architecture
PlayOn! Sports – Video stream processing
Laptop
Encoders
HLS
S3
Playback
VOD Stream
mobile client
CloudFro
nt
Streaming
Live stream
mobile client
CloudFro
nt
S3 Ingest
480p
Transcod
e
HQ Copy
360p
Transcod
e
Audio-
only
Transcod
e
Thumbnai
l
QOS
Analytics
Cascading Lambda Functions
http://www.slideshare.net/AmazonWebServices/arc308-the-serverless-company-using-aws-lambda
“But…
in order to utilize Lambda, do I really
need to architect event-driven
applications?” – you (maybe)
SOA still works.
Amazon API Gateway
A fully managed service for your APIs
Create Configure Publish
Maintain Monitor Secure
Demo
AWS Lambda
Function
web browser
Amazon S3
Dynamic Content
Serverless Website
Amazon API
Gateway
Static Content
Amazon
DynamoDB
Serverless Architecture Patterns
Microservices
Mobile Backend
Real-time Analytics Engine
Serverless Best Practices
AWS Lambda Best Practices
1. Limit your function size –
especially for Java (starting
the JVM takes time)
2. Node – remember execution
is asynchronous.
3. Don’t assume function
container reuse – but take
advantage of it when it does
occur.
1. Don’t forget about disk
(500MB /tmp directory
provided to each function)
2. Use function Aliases for
release.
3. Use the included logger
(include details from service-
provided context)
4. Create custom metrics
(operations-centric, and
business-centric)
Amazon API Gateway Best Practices
1. Use request/response
mapping templates
everywhere within reason, not
passthrough.
2. Take ownership of HTTP
response codes
3. Use Swagger import/export
for cross-account sharing
1. Use Mock integrations
2. Combine with Cognito for
managed end user-based
access control.
3. Use stage variables (inject
API config values into
Lambda functions for logging,
behavior)
Additional Best Practices
1. Use strategic, consumable
naming conventions (Lambda
function names, IAM roles,
API names, API stage names,
etc.)
2. Use naming conventions and
versioning to create
automation.
3. Externalize authorization to
IAM roles whenever possible
1. Least privilege and separate
IAM roles
2. Externalize configuration –
DynamoDB is great for this.
3. Contact AWS Support before
known large scaling events
4. Be aware of service throttling,
engage AWS support if so.
A Call to Action
Go build something!
Amazon API
Gateway
AWS Lambda Amazon
DynamoDB
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

Automate Migration to AWS with Datapipe
Automate Migration to AWS with DatapipeAutomate Migration to AWS with Datapipe
Automate Migration to AWS with Datapipe
Amazon Web Services
 

Was ist angesagt? (20)

SRV203 Getting Started with AWS Lambda and the Serverless Cloud
SRV203 Getting Started with AWS Lambda and the Serverless CloudSRV203 Getting Started with AWS Lambda and the Serverless Cloud
SRV203 Getting Started with AWS Lambda and the Serverless Cloud
 
AWS Lambda: Event-driven Code for Devices and the Cloud
AWS Lambda: Event-driven Code for Devices and the CloudAWS Lambda: Event-driven Code for Devices and the Cloud
AWS Lambda: Event-driven Code for Devices and the Cloud
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
Getting Started with Serverless Architectures | AWS Public Sector Summit 2016
 
AWS January 2016 Webinar Series - Getting Started with Big Data on AWS
AWS January 2016 Webinar Series - Getting Started with Big Data on AWSAWS January 2016 Webinar Series - Getting Started with Big Data on AWS
AWS January 2016 Webinar Series - Getting Started with Big Data on AWS
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
Automated Compliance and Governance with AWS Config and AWS CloudTrail - June...
Automated Compliance and Governance with AWS Config and AWS CloudTrail - June...Automated Compliance and Governance with AWS Config and AWS CloudTrail - June...
Automated Compliance and Governance with AWS Config and AWS CloudTrail - June...
 
Automate Migration to AWS with Datapipe
Automate Migration to AWS with DatapipeAutomate Migration to AWS with Datapipe
Automate Migration to AWS with Datapipe
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
AWS re:Invent 2016: Store and collaborate on content securely with Amazon Wor...
AWS re:Invent 2016: Store and collaborate on content securely with Amazon Wor...AWS re:Invent 2016: Store and collaborate on content securely with Amazon Wor...
AWS re:Invent 2016: Store and collaborate on content securely with Amazon Wor...
 
AWS re:Invent 2016: Workshop: Building Your First Big Data Application with A...
AWS re:Invent 2016: Workshop: Building Your First Big Data Application with A...AWS re:Invent 2016: Workshop: Building Your First Big Data Application with A...
AWS re:Invent 2016: Workshop: Building Your First Big Data Application with A...
 
Deep Dive on Accelerating Content, APIs, and Applications with Amazon CloudFr...
Deep Dive on Accelerating Content, APIs, and Applications with Amazon CloudFr...Deep Dive on Accelerating Content, APIs, and Applications with Amazon CloudFr...
Deep Dive on Accelerating Content, APIs, and Applications with Amazon CloudFr...
 
Journey Towards Scaling Your Application to 10 million users
Journey Towards Scaling Your Application to 10 million usersJourney Towards Scaling Your Application to 10 million users
Journey Towards Scaling Your Application to 10 million users
 
The Best of re:invent 2016
The Best of re:invent 2016The Best of re:invent 2016
The Best of re:invent 2016
 
Databases
DatabasesDatabases
Databases
 
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
Migrate from Oracle to Amazon Aurora using AWS Schema Conversion Tool & AWS D...
 
Getting Started with Amazon Kinesis | AWS Public Sector Summit 2016
Getting Started with Amazon Kinesis | AWS Public Sector Summit 2016Getting Started with Amazon Kinesis | AWS Public Sector Summit 2016
Getting Started with Amazon Kinesis | AWS Public Sector Summit 2016
 
Introduction to Amazon Lightsail
Introduction to Amazon LightsailIntroduction to Amazon Lightsail
Introduction to Amazon Lightsail
 
Moving Data into the Cloud with AWS Transfer Services - May 2017 AWS Online ...
Moving Data into the Cloud with AWS Transfer Services  - May 2017 AWS Online ...Moving Data into the Cloud with AWS Transfer Services  - May 2017 AWS Online ...
Moving Data into the Cloud with AWS Transfer Services - May 2017 AWS Online ...
 
Data Processing without Servers | AWS Public Sector Summit 2016
Data Processing without Servers | AWS Public Sector Summit 2016Data Processing without Servers | AWS Public Sector Summit 2016
Data Processing without Servers | AWS Public Sector Summit 2016
 

Andere mochten auch

Andere mochten auch (20)

Deep Dive on Serverless Web Applications - AWS May 2016 Webinar Series
Deep Dive on Serverless Web Applications - AWS May 2016 Webinar SeriesDeep Dive on Serverless Web Applications - AWS May 2016 Webinar Series
Deep Dive on Serverless Web Applications - AWS May 2016 Webinar Series
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
 
AWS re:Invent 2016: Driving AWS Cost Efficiency at Your Company (ENT202)
AWS re:Invent 2016: Driving AWS Cost Efficiency at Your Company (ENT202)AWS re:Invent 2016: Driving AWS Cost Efficiency at Your Company (ENT202)
AWS re:Invent 2016: Driving AWS Cost Efficiency at Your Company (ENT202)
 
AWS re:Invent 2016: From EC2 to ECS: How Capital One uses Application Load Ba...
AWS re:Invent 2016: From EC2 to ECS: How Capital One uses Application Load Ba...AWS re:Invent 2016: From EC2 to ECS: How Capital One uses Application Load Ba...
AWS re:Invent 2016: From EC2 to ECS: How Capital One uses Application Load Ba...
 
NEW LAUNCH! Enhance Your Mobile Apps with AI Using Amazon Lex
NEW LAUNCH! Enhance Your Mobile Apps with AI Using Amazon LexNEW LAUNCH! Enhance Your Mobile Apps with AI Using Amazon Lex
NEW LAUNCH! Enhance Your Mobile Apps with AI Using Amazon Lex
 
Microservices Architecture for Web Applications using Amazon AWS Cloud
Microservices Architecture for Web Applications using Amazon AWS CloudMicroservices Architecture for Web Applications using Amazon AWS Cloud
Microservices Architecture for Web Applications using Amazon AWS Cloud
 
Serverless GraphQL @ServerlessConf New York
Serverless GraphQL @ServerlessConf New YorkServerless GraphQL @ServerlessConf New York
Serverless GraphQL @ServerlessConf New York
 
Getting Started with Managed Services | AWS Public Sector Summit 2016
Getting Started with Managed Services | AWS Public Sector Summit 2016Getting Started with Managed Services | AWS Public Sector Summit 2016
Getting Started with Managed Services | AWS Public Sector Summit 2016
 
Getting Started with Amazon Enterprise Applications
Getting Started with Amazon Enterprise ApplicationsGetting Started with Amazon Enterprise Applications
Getting Started with Amazon Enterprise Applications
 
Database Migration: Simple, Cross-Engine and Cross-Platform Migrations with ...
 Database Migration: Simple, Cross-Engine and Cross-Platform Migrations with ... Database Migration: Simple, Cross-Engine and Cross-Platform Migrations with ...
Database Migration: Simple, Cross-Engine and Cross-Platform Migrations with ...
 
Serverless microservices in the wild
Serverless microservices in the wildServerless microservices in the wild
Serverless microservices in the wild
 
Successful Cloud Adoption for the Enterprise. Not If. When.
Successful Cloud Adoption for the Enterprise. Not If. When.Successful Cloud Adoption for the Enterprise. Not If. When.
Successful Cloud Adoption for the Enterprise. Not If. When.
 
Application Migrations
Application MigrationsApplication Migrations
Application Migrations
 
AWS Summit Gold Sponsor Presentation - Soltius
AWS Summit Gold Sponsor Presentation - SoltiusAWS Summit Gold Sponsor Presentation - Soltius
AWS Summit Gold Sponsor Presentation - Soltius
 
Cost optimization at scale toronto v3
Cost optimization at scale toronto v3Cost optimization at scale toronto v3
Cost optimization at scale toronto v3
 
Best Practices for Protecting Cloud Workloads - November 2016 Webinar Series
Best Practices for Protecting Cloud Workloads - November 2016 Webinar SeriesBest Practices for Protecting Cloud Workloads - November 2016 Webinar Series
Best Practices for Protecting Cloud Workloads - November 2016 Webinar Series
 
AWS re:Invent 2016: Design, Deploy, and Optimize Microsoft SharePoint on AWS ...
AWS re:Invent 2016: Design, Deploy, and Optimize Microsoft SharePoint on AWS ...AWS re:Invent 2016: Design, Deploy, and Optimize Microsoft SharePoint on AWS ...
AWS re:Invent 2016: Design, Deploy, and Optimize Microsoft SharePoint on AWS ...
 
Cloud Adoption
Cloud AdoptionCloud Adoption
Cloud Adoption
 
Deep Dive on Amazon Relational Database Service
Deep Dive on Amazon Relational Database ServiceDeep Dive on Amazon Relational Database Service
Deep Dive on Amazon Relational Database Service
 
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
 

Ähnlich wie Getting Started with Serverless Architectures - August 2016 Monthly Webinar Series

AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017
AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017
AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017
Amazon Web Services Korea
 

Ähnlich wie Getting Started with Serverless Architectures - August 2016 Monthly Webinar Series (20)

AWS March 2016 Webinar Series Getting Started with Serverless Architectures
AWS March 2016 Webinar Series   Getting Started with Serverless ArchitecturesAWS March 2016 Webinar Series   Getting Started with Serverless Architectures
AWS March 2016 Webinar Series Getting Started with Serverless Architectures
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Primeros pasos con arquitecturas serverless
Primeros pasos con arquitecturas serverlessPrimeros pasos con arquitecturas serverless
Primeros pasos con arquitecturas serverless
 
Contruyendo tu primera aplicación con AWS
Contruyendo tu primera aplicación con AWSContruyendo tu primera aplicación con AWS
Contruyendo tu primera aplicación con AWS
 
Getting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless ComputingGetting Started with AWS Lambda and Serverless Computing
Getting Started with AWS Lambda and Serverless Computing
 
Raleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applicationsRaleigh DevDay 2017: Building serverless web applications
Raleigh DevDay 2017: Building serverless web applications
 
Raleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshopRaleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshop
 
AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017
AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017
AWS Lambda 활용의 모든 것! - AWS Summit Seoul 2017
 
How to build and deploy serverless apps - AWS Summit Cape Town 2018
How to build and deploy serverless apps - AWS Summit Cape Town 2018How to build and deploy serverless apps - AWS Summit Cape Town 2018
How to build and deploy serverless apps - AWS Summit Cape Town 2018
 
Build and run applications without thinking about servers
Build and run applications without thinking about serversBuild and run applications without thinking about servers
Build and run applications without thinking about servers
 
Primeros pasos en desarrollo serverless
Primeros pasos en desarrollo serverlessPrimeros pasos en desarrollo serverless
Primeros pasos en desarrollo serverless
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
Getting Started with AWS Lambda and the Serverless Cloud by Jim Tran, Princip...
Getting Started with AWS Lambda and the Serverless Cloud by Jim Tran, Princip...Getting Started with AWS Lambda and the Serverless Cloud by Jim Tran, Princip...
Getting Started with AWS Lambda and the Serverless Cloud by Jim Tran, Princip...
 
Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
 Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T... Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
Getting Started with AWS Lambda and the Serverless Cloud - AWS Summit Cape T...
 
Serverless Generative AI on AWS, AWS User Groups of Florida
Serverless Generative AI on AWS, AWS User Groups of FloridaServerless Generative AI on AWS, AWS User Groups of Florida
Serverless Generative AI on AWS, AWS User Groups of Florida
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
20180111 we bde-bs - serverless url shortener
20180111   we bde-bs - serverless url shortener20180111   we bde-bs - serverless url shortener
20180111 we bde-bs - serverless url shortener
 
SMC301 The State of Serverless Computing
SMC301 The State of Serverless ComputingSMC301 The State of Serverless Computing
SMC301 The State of Serverless Computing
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 

Getting Started with Serverless Architectures - August 2016 Monthly Webinar Series

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Andrew Baird, Solutions Architect, AWS August 24, 2016 Getting Started with Serverless Architectures
  • 2. Agenda  Background  AWS Lambda  Amazon API Gateway  Demo  Serverless Architecture Patterns  Serverless Best Practices
  • 3. Background How serverless architecture patterns with AWS Lambda are the next evolution of application design
  • 5. The Service Oriented Architecture Presentation Tier Logic Tier Data Tier
  • 7. Tools to help this pattern are VAST  Web Servers  Code Libraries  Web Service/Application Frameworks  Configuration Management Tools  API Management Platforms  Deployment Patterns  CI/CD Patterns  Containers  Etc. Etc. Etc.
  • 8. AWS has helped too!  Amazon EC2  EC2 Auto-Scaling  AWS Elastic Load Balancer  EC2 Auto-Recovery  AWS Trusted Advisor  AWS Elastic Beanstalk  AWS OpsWorks  AWS EC2 Container Service  Etc. Etc. Etc.
  • 9. But…. many of these tools and innovations are still coupled to a shared dependency…
  • 10. Servers (AAHHHHHHHHH!!)  What size servers are right for my budget?  How many users create too much load for my servers?  How much remaining capacity do my servers have?  How can I detect if a server has been compromised?  How many servers should I budget for?  Which OS should my servers run?  Which users should have access to my servers?  How can I control access from my servers?  How will I keep my server OS patched?  How will new code be deployed to my servers?  How can I increase utilization of my servers?  When should I decide to scale out my servers?  What size server is right for my performance?  Should I tune OS settings to optimize my application?  Which packages should be baked into my server images?  When should I decide to scale up my servers?  How should I handle server configuration changes?  How will the application handle server hardware failure?
  • 11. Architect to be Serverless Fully Managed  No provisioning  Zero administration  High availability Developer Productivity  Focus on the code that matters  Innovate rapidly  Reduce time to market Continuous Scaling  Automatically  Scale up and scale down
  • 13. Serverless, event-driven compute service Lambda = microservice without servers
  • 14. Components of Lambda  A Lambda Function (that you write)  An Event Source  The AWS Lambda Service  The Function Networking Environment
  • 15. The Lambda Function  Your Code (Java, NodeJS, Python)  The IAM role that code assumes during execution  The amount of memory allocated to your code (affects CPU and Network as well) A valid, complete Lambda function
  • 16. An Event Source  When should your function execute?  Many AWS services can be an event source today: • S3 • Kinesis • SNS • DynamoDB • CloudWatch • Config Rules • Amazon Echo • Etc. • …and Amazon API Gateway (more later)
  • 17. The AWS Lambda Service  Runs your function code without you managing or scaling servers.  Provides an API to trigger the execution of your function.  Ensures function is executed when triggered, in parallel, regardless of scale.  Provides additional capabilities for your function (logging, monitoring).
  • 18. The Function Networking Environment Default - a default network environment within VPC is provided for you  Access to the internet always permitted to your function  No access to VPC-deployed assets Customer VPC - Your function executes within the context of your own VPC.  Privately communicate with other resources within your VPC.  Familiar configuration and behavior with: – Subnets – Elastic Network Interfaces (ENIs) – EC2 Security Groups – VPC Route Tables – NAT Gateway
  • 19. “Hold on…” – you (maybe)
  • 20. Lots of existing ways to abstract away servers  SaaS  PaaS  MBaaS  *aaS  Application Engines/Platforms
  • 21. What’s unique about Lambda?  Abstraction at the code/function level (arbitrary, flexible, familiar)  The security model (IAM, VPC)  The pricing model  The community  Integration with the AWS Service ecosystem! • Scale • Triggers
  • 22. Many Serverless Options on AWS Storage DatabaseNetwork Compute Content DeliveryMessaging and QueuesSecurity Gateways User Management Monitoring & Logging Internet of Things Machine Learning Streaming Analytics
  • 24. PlayOn! Sports – Video stream processing Laptop Encoders HLS S3 Playback VOD Stream mobile client CloudFro nt Streaming Live stream mobile client CloudFro nt S3 Ingest 480p Transcod e HQ Copy 360p Transcod e Audio- only Transcod e Thumbnai l QOS Analytics Cascading Lambda Functions http://www.slideshare.net/AmazonWebServices/arc308-the-serverless-company-using-aws-lambda
  • 25. “But… in order to utilize Lambda, do I really need to architect event-driven applications?” – you (maybe)
  • 28. A fully managed service for your APIs Create Configure Publish Maintain Monitor Secure
  • 29. Demo AWS Lambda Function web browser Amazon S3 Dynamic Content Serverless Website Amazon API Gateway Static Content Amazon DynamoDB
  • 35. AWS Lambda Best Practices 1. Limit your function size – especially for Java (starting the JVM takes time) 2. Node – remember execution is asynchronous. 3. Don’t assume function container reuse – but take advantage of it when it does occur. 1. Don’t forget about disk (500MB /tmp directory provided to each function) 2. Use function Aliases for release. 3. Use the included logger (include details from service- provided context) 4. Create custom metrics (operations-centric, and business-centric)
  • 36. Amazon API Gateway Best Practices 1. Use request/response mapping templates everywhere within reason, not passthrough. 2. Take ownership of HTTP response codes 3. Use Swagger import/export for cross-account sharing 1. Use Mock integrations 2. Combine with Cognito for managed end user-based access control. 3. Use stage variables (inject API config values into Lambda functions for logging, behavior)
  • 37. Additional Best Practices 1. Use strategic, consumable naming conventions (Lambda function names, IAM roles, API names, API stage names, etc.) 2. Use naming conventions and versioning to create automation. 3. Externalize authorization to IAM roles whenever possible 1. Least privilege and separate IAM roles 2. Externalize configuration – DynamoDB is great for this. 3. Contact AWS Support before known large scaling events 4. Be aware of service throttling, engage AWS support if so.
  • 38. A Call to Action
  • 39. Go build something! Amazon API Gateway AWS Lambda Amazon DynamoDB