Notes 1 Flashcards
DynamoDB streams detect data modifications in a table and can automatically trigger a Lambda function. True or False?
True
CloudTrail is used for?
CloudTrail Logs provide you specific information on what occurred in your AWS account
CloudWatch is used for?
CloudWatch Logs reports on application logs
What is Route53?
Amazon Route 53 is a highly available and scalable Domain Name System (DNS) service.
What is Amazon Kenisis?
Amazon Kinesis makes it easy to collect, process, and analyze real-time, streaming data so you can get timely insights and react quickly to new information.
What is AWS ECS?
Elastic Container Service
Amazon ECS (Elastic Container Service) is a fully managed container orchestration service that makes it easy for you to deploy, manage, and scale containerized applications. Think of it being like Docker.
What is AWS X-Ray used for?
AWS X-Ray helps developers analyze and debug production, distributed applications, such as those built using a microservices architecture. With X-Ray, you can understand how your application and its underlying services are performing to identify and troubleshoot the root cause of performance issues and errors
What is Amazon Inspector?
Amazon Inspector is a vulnerability management service that continuously scans your AWS workloads for vulnerabilities. Amazon Inspector automatically discovers and scans Amazon EC2 instances and container images residing in Amazon Elastic Container Registry (Amazon ECR) for software vulnerabilities and unintended network exposure.
What is Amazon Cognito?
Amazon Cognito lets you add user sign-up, sign-in, and access control to your web and mobile apps quickly and easily.
Amazon Cognito provides authentication, authorization, and user management for your web and mobile apps.
Your users can sign in directly with a user name and password, or through a third party such as Facebook, Amazon, or Google.
Which key/value cache store is suitable for single and which for multithreaded?
Redis for single threaded server, Memcache for multi-threaded
When would you choose Memache over Redis?
You can choose Memcached over Redis if you have the following requirements:
- You need the simplest model possible.
- You need to run large nodes with multiple cores or threads.
- You need the ability to scale out and in, adding and removing nodes as demand on your system increases and decreases.
- You need to cache objects, such as a database.
What should the developer do to prevent a Lambda function from throttling?
Nothing, Lambda will automatically scale to handle the load
What should be done to only allow authorized clients to invalidate an API Gateway cache entry when submitting API requests?
- Client sends a request with “Cache-Control: max-age=0” in the header.
- Tick the “Required Authorization” in cache settings of your API via the console.
What are the 5 deployment method types?
- All at once
- Rolling
- Rolling with additional batch
- Immutable
- Blue/Green
- All at once – Deploy the new version to all instances simultaneously. All instances in your environment are out of service for a short time while the deployment occurs.
- Rolling – Deploy the new version in batches. Each batch is taken out of service during the deployment phase, reducing your environment’s capacity by the number of instances in a batch.
- Rolling with additional batch – Deploy the new version in batches, but first launch a new batch of instances to ensure full capacity during the deployment process.
- Immutable – Deploy the new version to a fresh group of instances by performing an immutable update.
- Blue/Green - Deploy the new version to a separate environment, and then swap CNAMEs of the two environments to redirect traffic to the new version instantly.
In a MSQL RDS database, how can you capture SQL statements that took longer to execute for troubleshooting?
Enable “Slow Query Log” in RDS. You can also enable logs to CloudWatch from RDS: Audit log, Error Log, General Log and Slow Query Log
In DynamoDB, how can you fetch just some of the attribute? E.g. if a table contains “id”, “course_id”, “course_title”, “price”, “rating” and you only want to return “course_id” and “price”.
Use “Projection Expression”.
To read data from a table, you use operations such as “GetItem”, “Query”, or “Scan”. DynamoDB returns all of the item attributes by default. To get just some, rather than all of the attributes, use a “projection expression”.
What are the three task placement strategies ECS supports?
binpack, random, spread
Amazon ECS supports the following task placement strategies:
binpack - Place tasks based on the least available amount of CPU or memory. This minimizes the number of instances in use.
random - Place tasks randomly.
spread - Place tasks evenly based on the specified value. Accepted values are attribute key-value pairs, instanceId, or host.
What is the difference between DynamoDB “eventually consistent” and “strongly consistent” reads?
=== Eventually Consistent Reads ===
When you read data from a DynamoDB table, the response might not reflect the results of a recently completed write operation. The response might include some stale data. If you repeat your read request after a short time, the response should return the latest data.
=== Strongly Consistent Reads ===
When you request a strongly consistent read, DynamoDB returns a response with the most up-to-date data, reflecting the updates from all prior write operations that were successful. However, this consistency comes with some disadvantages:
A strongly consistent read might not be available if there is a network delay or outage. In this case, DynamoDB may return a server error (HTTP 500).
Strongly consistent reads may have higher latency than eventually consistent reads.
Strongly consistent reads are not supported on global secondary indexes.
Strongly consistent reads use more throughput capacity than eventually consistent reads.
=====
GetItem provides an eventually consistent read by default. If your application requires a strongly consistent read, set ConsistentRead to true.