Hackers continuously try to hack your AWS account and make sure they can overbill you and shut you down. Put security in place always.
AWS is pay-as-you-go with hundreds of services that have different pricing depending on features and geography.
Main advantage is that you do not have to buy a physical server, you just “rent” a secure space on the AWS servers and pay according to usage.
An EC2 instance is the main AWS equivalent to a server. They can have different purposes and can scale vertically. You need them, you use them; you do not need them, you shut them down. There are saving plans for 1+ years commitments.
Quote of the day from Dr. Werner Vogels: “Everything fails all the time so plan for failure so nothing fails.“
Auto-scaling allows to handle higher capacities without overcommitting. You can scale up (more computing power to a single instance) and you can scale out (more instances).
ELB is AWS Load Balancer to distribute the traffic across multiple instances, so no server gets overloaded.
Apps can be:
Tightly-coupled or monolithic: it fails when there are bottlenecks;
Loosely-coupled: it handles capacity with buffers. AWS offers messaging (SNS) and queueing as buffers (SQS);
AWS Lambda is a serverless function that can be used to run code under 15 minutes. Serverless means you pay for usage and not for hours rented.
If cannot be handled with serverless functions, AWS Fargate allows to handle serverless containers and orchestrate them.