AWS
AWS
- You can provision and launch an Amazon EC2 instance within minutes.
- You can stop using it when you have finished running a workload.
- You pay only for the compute time you use when an instance is running, not
when it is stopped or terminated.
- You can save costs by paying only for server capacity that you need or want
Small/medium databases
Ideal when resource needs are evenly distributed without requiring optimization in one area.
High-performance databases
Data warehousing
High-frequency OLTP
They offer high IOPS (input/output operations per second), supporting demanding storage
performance needs.
Amazon EC2 Auto Scaling automatically adds or removes EC2 instances based on
application demand, helping maintain availability.
When launching an app on Amazon EC2, you can configure an Auto Scaling group with:
Minimum capacity: The least number of EC2 instances always running (e.g., 1).
You only pay for the instances you use, making it a cost-effective
way to ensure performance and availability
II. Elastic Load Balancing (ELB)
Elastic Load Balancing (ELB) automatically distributes incoming traffic across multiple
resources like Amazon EC2 instances.
The load balancer acts as a single entry point, routing traffic to multiple instances in your
Auto Scaling group. This helps balance the load so no single instance is overwhelmed.
Though ELB and EC2 Auto Scaling are separate services, they work together to maintain
high performance and availability for your application.
Low-Demand Period
High-Demand Period
It's like a coffee shop: the cashier (publisher) sends orders to the barista (subscriber).
Subscribers can be web servers, email addresses, AWS Lambda functions, and more.
Amazon SQS is a message queuing service that lets components send, store, and
receive messages reliably—even if other services are temporarily unavailable.
Messages are placed in a queue, processed by a service or user, and then deleted once
handled.
AWS Lambda lets you run code without managing servers. You only pay for the compute
time used, with no charges when code isn’t running.
You can run code for nearly any app or backend task. For example, a Lambda function
can automatically resize images when they’re uploaded to the cloud.
It supports Docker containers, allowing you to build, test, and deploy apps efficiently.
With ECS, you can use API calls to start and stop Docker-based applications.
- AWS Fargate
AWS Fargate is a serverless compute engine for containers that works with ECS and EKS.
With Fargate, there's no need to manage servers—AWS handles the infrastructure. You
focus on building your apps and only pay for the resources your containers use.
V. Subnets
A section of a VPC (Virtual Private Cloud) in which you
can group resources based on security or operational
needs. Subnets can be public or private.
Packets enter into a VPC through an internet gateway. Before a packet can enter or exit
from a subnet, it checks for permissions. Permissions indicate who sent the packet and
how the packet is trying to communicate with the resources.
The component that checks packet permissions is a Network Access Control List (ACL) .
For example, if an EC2 instance sends a request to the internet, the security group
automatically allows the response back, even if no inbound rule exists for it.
Both network ACLs and security groups let you create custom traffic rules, but it's
important to understand their differences as you explore AWS networking and security.
For example:
2. The resolver queries the company DNS server for the website’s IP.
Because EBS volumes are for data that needs to persist, it’s
important to back up the data. You can take incremental
backups of EBS volumes by creating Amazon EBS snapshots.
An EBS snapshot is an incremental backup. The first snapshot copies all data, but later
snapshots only save changed data blocks since the last one.
This differs from a full backup, which copies all data every time, even unchanged data.
When update a file in block storage, only the changes are updated.
Amazon Simple Storage Service (Amazon S3) provides object-level storage. Objects are
stored in buckets.
Any files can be uploaded to Amazon S3, like images, videos, text files, …. Amazon S3
offers unlimited storage space. The maximum size for an object is 5 TB.
A file can have permissions to control visibility and access to it. Amazon S3 versioning
feature can also be used to track changes to objects over time.
Amazon S3 offers various storage classes to meet different access and cost needs.
Selection depends on how often data is accessed and the required availability.
S3 Standard
S3 Intelligent-Tiering
Automatically moves data between frequent and infrequent tiers based on usage
File storage allows multiple clients (users, apps, servers) to access shared files via file
paths. It uses block storage with a local file system. This method suits scenarios where
many services need simultaneous access to the same data.
A scalable file system for AWS and on-premises use. Automatically adjusts capacity as
files are added or removed, scaling to petabytes without downtime.
Amazon EBS
Stores data in a single Availability Zone. EC2 instances and EBS volumes must be in
the same zone to connect.
Amazon EFS
A regional service storing data across multiple Availability Zones. Supports
concurrent access from all zones and from on-premises via AWS Direct Connect.
- Amazon Aurora: