Serverless Overviews from a Solution Architect Perspective Flashcards
What does Serverless mean?
You don’t manage, provision or see servers.
What applications are serverless in AWS?
AWS Lambda DynamoDB AWS Cognito AWS API Gateway Amazon S3 AWS SNS & SQS AWS Kinesis Data Firehose Aurora Serverless Step Functions Fargate
Increasing RAM of AWS Lambda will also improve what?
CPU & Network
What languages does AWS lambda support?
Node.js (JavaScript) Python Java (Java 8 compatible) C# (.NET Core) Golang C# / Powershell Ruby Custom Runtime API (community supported)
What is preferred for running arbitrary Docker images?
ECS / Fargate
A Linux command used for scheduling tasks to be executed sometime in the future.
This is usually used to schedule a job that is executed periodically, for example every morning
What is this called?
Cron Job
In AWS Lambda how many of the first call request are free?
1 million
In AWS Lambda how many of the first compute time per month are free?
400,000 GB-seconds
For AWS Lambda what is the memory allocation?
128 MB - 10 GB
For AWS Lambda what is the maximum execution time?
900 seconds (15 minutes)
For AWS Lambda what are the environment variables?
4 KB
For AWS Lambda what are the concurrency executions?
1000 (can be increased)
What is the Lambda function deployment size?
50 MB
For Lambda what is the size of uncompressed deployment?
250 MB
In AWS Lambda deployment, how would you upload other files?
/tmp directory
You can use Lambda to change what?
CloudFront requests and responses
- Website Security and Privacy
- Dynamic Web Application at the Edge
- Search Engine Optimization (SEO)
- Intelligently Route Across Origins and Data Centers
- Bot Mitigation at the Edge
- Real-time Image Transformation
- A/B Testing
- User Authentication and Authorization
- User Prioritization
- User Tracking and Analytics
Lambda@Edge
the execution of two or more computer programs by a single computer
Concurrency executions
Creating 2 versions of a digital asset to see which one users respond to better. Examples of assets include a landing page, display ad, marketing email , and social post.
A/B Testing
- Fully managed, highly available with replication across multiple AZs
- NoSQL database - not a relational database
- Scales to massive workloads, distributed database
- Millions of requests per seconds, trillions of row, 100s of TB of storage
- Fast and consistent in performance (low latency on retrieval)
- Integrated with lAM for security, authorization and administration
- Enables event driven programming with DynamoDB Streams
- Low cost and auto-scaling capabilities
Amazon Dynamo DB
Dynamo DB is made from what?
Tables
What is the maximum size of an item in a DynamoDB Table?
400KB
- You specify the number of reads/writes per second
- You need to plan capacity beforehand
• Pay for (blank) Read Capacity
Units (RCU) & Write Capacity Units (WCU)
• Possibility to add auto-scaling mode for RCU & WCU
What DynamoDB mode is this?
Provisioned Mode
- Read/writes automatically scale up/down with your workloads
- No capacity planning needed
- Pay for what you use, more expensive ($$$)
- Great for unpredictable workloads
What DynamoDB mode is this?
On-Demand Mode
A fully managed, highly available, in-memory cache for DynamoDB, that delivers up to a 10 times performance improvement—from milliseconds to microseconds—even at millions of requests per second.
DynamoDB Accelerator (DAX)
This feature when enabled, captures a time-ordered sequence of item-level modifications in a DynamoDB table and durably stores the information for up to 24 hours.
DynamoDB Streams
A collection of one or more replica tables, all owned by a single AWS account.
DynamoDB Global Tables
What type of Dynamo DB indexes are there?
Global Secondary Indexes (GSI)
Local Secondary Indexes (LSI)
What does an API Gateway do?
To put it simply, the API Gateway takes all API requests from a client, determines which services are needed, and combines them into a unified, seamless experience for the user.
What does API Gateway integrate with?
Lambda Function
HTTP
AWS Service
What are the three ways to deploy API Gateway?
- Edge Optimized (default)
- Regional
- Private
- the single-entry point for defined back-end APIs and microservices
- the gateway acts as protector, enforcing security and ensuring scalability and high availability
API Gateway
Which API Gateway Security feature is this?
- Great for users / roles already within your AWS account.
- Handles authentication & authorization
- Leverages Sig v4
IAM Permissions
The process to add authentication information to AWS API requests sent by HTTP
Signature Version 4 (SigV4)
What API Gateway Security feature is this?
- Great for 3rd party tokens
- Very flexible in terms of what IAM policy is returned
- Handle Authentication + Authorization
- Pay per Lambda invocation
Lambda Authorizer (Custom Authorizer)
What API Gateway Security feature is this?
- You manage your own user pool (backed by FB, Google login etc)
- No need to write any custom code
- Must implement authorization in the backend
Cognito User Pool
Gives users an identity so that they can interact with our application
AWS Cognito
- Sign in functionality for app users
- Integrate w API Gateway for authentication
Which Cognito product is this?
Cognito User Pools
- Provide AWS credentials to user so they can access AWS resources directly
- Integrate with Cognito User Pools as an identity provider
Which Cognito product is this?
Cognito Identity Pools (Federated Identity)
- Synchronise data from device to Cognito
- Requires Federated Identity Pool in Cognito (not User Pool)
- Deprecated and replaced by AppSync
Which Cognito product is this?
Cognito Sync
What does SAM stand for?
Serverless Application Model
- Framework for developing and deploying serverless applications
- Can help you run Lambda, API Gateway, DynamoDB locally
- Can use CodeDeploy to deploy Lambda functions
- Allows you to deploy Lambda Functions, DynamoDB, API Gateway & Cognito User Pools
AWS SAM
RCU & WCU are __________.
What does that mean?
Decoupled, meaning you can increase/decrease each value separately
This feature is integrated with Lambda so that you create triggers that automatically respond to events in real time.
DynamoDB Streams
To create a serverless API - what should you integrate Amazon API Gateway with?
AWS Lambda
Where are API requests routed to?
The nearest CloudFront Edge Location (which improves latency)
Who is an Edge-Optimized API Gateway best for?
Geographically distributed clients
What feature integrates w Facebook to provide authenticated logins for your application users?
Amazon Cognito User Pools (CUP)
What feature allows you to run code closer to your users, which improves performance and reduces latency.
Lambda@Edge