Dev - Serverless Computing
How is Lambda priced?
- Number of Requests - Duration (Time it takes for code to be executed and how much memory is allocated to your function)
What does AWS X-ray integrate with?
-Elastic Load Balancer -AWS Lambda -Amazon API Gateway -EC2 -Elastic Beanstalk
What languages are support with X-ray?
-Java -Go -Node.js -Python -Ruby -.net
1 Lambda event can trigger how many lambda functions?
1 event = any amount of functions. Functions can also trigger other functions
What happens if you go over 10,000 requests per second or 5000 concurrent requests?
429 too many requests error response
What can you do to reduce the calls being made when you keep getting the same request to your endpoint for the same data, improving the latency request to your API?
API Caching
A fully managed service that makes it easy for developers to publish, maintain, monitor and secure APIs at any scale.
API Gateway
If we had data in DynamoDB what can we use to differentiate the HTTPS GET requests based on the variables in the URL we're using to grab specific info?
API Gateway
When an S3 bucket uses dynamic content, how could the end user grab that content from other AWS resources?
API Gateway
For API Gateway, if the caller submits 5,000 requests in the first millisecond and then evenly spreads another 5,000 requests through the remaining 999 milliseconds, what will happen?
API Gateway processes all 10,000 requests in the one-second period without returning a 429 error. Remember, 10000 requests per minute, 5000 concurrent request per minute
What can exposes HTTPS endpoints to define a RESTful API and what does that means?
API Gateway. Essentially API Gateway gives us an HTTPS address that we can make calls to and then we can configure how the API responds to those calls
You enable _ in Amazon API Gateway to cache your endpoint's response. You can reduce the number of calls made to your endpoint and also improve the latency of the requests to your API.
API caching
What does API Gateway first check when receiving a request if API caching is enabled?
API caching uses a TTL for frequently received request. When it receives a request it will first check its cache instead of sending the request straight to the endpoint
Each Lambda version has a unique _
ARN
Using this, with a few click in the AWS Management Console, you can create an API that acts as a "front door" for applications to access data, business logic, or functionality from your back-end services, such as applications running on Amazon Elastic Compute Cloud (Amazon EC2), code running on AWS Lambda, or any web application.
AWS API Gateway
A compute service where you can upload your code and create functions. This takes care of provisioning and managing the servers that you use to run the code. You dont have to worry about operating systems, patching, scaling, etc.
AWS Lambda
What can you run as a compute service to run your code in response to HTTP requests using Amazon API Gateway or API calls made using AWS SDKs.
AWS Lambda
You can use _ as an event-driven compute service where _ runs your code in response to events. These events could be changes to data in an Amazon S3 bucket or an Amazon DynamoDB table called triggers.
AWS Lambda
-Interceptors to add to your code to trace incoming HTTP requests. -Client handlers to instrument AWS SDK clients that your application uses to call other AWS services. - HTTP client to use to instrument calls to other internal and external HTTP web services
AWS X-Ray SDK
What does API stand for?
Application Programming Interface
What are the three different ways you can create a Lambda function?
Author from scratch - Create everything Blueprints - Use a preconfigured template Serverless Application Repository - use apps (cloudformation templates) published by developers
What two different ways does AWS throttle API Gateway?
By default, limits request rate to 10,000 requests per second Maximum concurrent requests is 5000 requests across all APIs within an AWS account
What allows restricted resources on a web page to be requested from another domain outside the domain from which the first resource was served?
CORS
What would you use for API gateway to talk to S3?
CORS, cross origin resource sharing
Where do your step function logs go?
Cloudwatch logs
How would you split your traffic for your Lambda function?
Create an Alias of the Lambda function
What would you do if you always wanted to have a version of the latest version in lambda?
Create an alias based on the latest version
Why would you create an Alias of your Lambda function?
Create an alias for $Latest, use the alias for production and add changes to the $Latest version
For API Gateway, what does defining resources and nested resources do?
Creates URL paths
What is Same-origin policy used for?
Cross site scripting (XSS) attacks
How do you create an S3 static website?
Enable within the properties of the bucket
True or false, after you publish a Lambda version you can change it at any time?
False
True or false, you cant use the API Gateway Import API feature to import an API from an external definition file into API Gateway?
False
True or false, when you use Lambda to respond to HTTP requests, when you have to users requesting the same API call, that will trigger 1 lambda functions response.
False regardless if the data is the same every request will have its own Lambda function response
True or false Lambda scales up not out?
False, Lambda will handle provisioning additional instances to handle whatever traffic but if you run out of memory you need to allocate more (Scaling up)
True or false, you need to scale API gateway to handle the traffic coming in?
False, scales automatically
If you want to register a domain name for a S3 static website, what two things do you need to check?
If the domain name is available and if the S3 bucket is available. Just top level, do not need ".com" in the bucket name
What two documents are required for an S3 static website?
Index.html / error.html
What language does a REST API work with?
JSON
When creating a weighted route for a Lambda function, which version can you not use?
Latest
What do Step functions give you so when things do go wrong you can diagnose and debug problems quickly?
Logs
What languages are supported by Lambda?
Node.js, Java, Python, C# and GO
What is considered a qualified ARN and an unqualified ARN?
Qualified ARN has the $latest in the name. Unqualified does not
What does REST API stand for?
REpresentaional State Transfer
When creating the Lambda function, what do you need to add for Lambda to have permissions to execute?
Role with a policy attached
What did REST API replace?
SOAP API
This is an important concept in the web application security model. Under the policy, a web browser permits scripts contained in a first web page to access data in a second web page, but only if both web pages have the same origin.
Same-origin policy
What does a SOAP API stand for?
Simple Object Access Protocol
What allows you to vizualize and test your serverless applications? Provides a graphical console to arrange and visualize the components of your application. Makes it simple to build and run multistep applications.
Step functions
What can you use to visualize your serverless application?
Step functions
You can import existing APIs using what?
Swagger 2.0 definition files
What type of file can the Import API feature Support?
Swagger 2.0 files, describes and documents RESTful APIs
Which Lambda version are you always aloud to change?
The one with $Latest, when you update you function code AWS Lambda replaces the code with $Latest version
What can you do with API Gateway to prevent attacks?
Throttle API gateway
How does Lambda know when to execute?
Trigger
True or false, API Gateway can be used to serverless-ly connect to services like Lambda & DynamoDB?
True
True or false, Lambda functions are independent, 1 event = 1 Function
True
True or false, Lambda functions can trigger other lambda functions?
True
True or false, for API throttling, if the caller sends 10,000 requests in the first millisecond, API Gateway serves 5,000 of those requests and throttles the rest in the one-second period>
True
True or false, you can configure API Gateway as a SOAP web service passthrough?
True
True or false, you can split traffic in weights for lambda functions helping rolling out changes slower?
True
True or false, Lambda can do things globally?
True, for example you can back up 1 S3 bucket in 1 region to another S3 bucket in another region using Lambda functions.
Where can you find Lambda in the services console?
Under Compute
How can you work with different variations of your Lambda functions in your development workflow, such as development, beta, and production?
Use versioning with Lambda
What would you use to debug Lambda architectures?
X-Ray
A service that collects data about requests that your application serves, and provides tools you can use to view, filter and gain insights into that data to identify issues and opportunities for optimization.
X-ray
This service is used for any traced request to you application, you can see detailed information not only about the request and response, but also about calls that your application makes downstream AWS resources, microservices, databases and HTTP web APIs.
X-ray
What helps trace incoming HTTP requests/responses and calls to other AWS services?
X-ray
How does the AWS X-ray architecture work?
X-ray SDK in the application sends data to X-ray Daemon (UDP Listener), which then sends the Data to the X-ray API, then to the console creating your visualization
What do you need to have for X-ray to help keep track of your application?
X-ray SDK installed inside of you application. If elastic beanstalk is being used to provision your app, you need an IAM role with full access to X-ray and other services being used
What language does SOAP API work with?
XML
WHat do you need to do if you see the following error? "Origin policy cannot be read at the remote resource?"
You need to enable CORS on API Gateway