Aws or Amazon Web Services

AWS or Amazon Web Services


In this article, I will be discussing AWS from the very beginning. Whether you are looking to learn about AWS for your career or just out of interest, I believe you will find this article helpful.

What is AWS?
Amazon Web Services (AWS) is a secure cloud services platform, offering computing power, database storage, content delivery, and other functionalities to help businesses scale and grow. This description is tedious, I know, so let me rephrase it like this: AWS is the market you need to go to for nearly all the requirements of the developer world. But here we should ask another question - what are cloud services? Briefly, since the subject of this article is AWS, a cloud service is any service made available to users on-demand via the Internet from a cloud computing provider's servers as opposed to being provided from a company's on-premises servers. Cloud services are designed to provide easy, scalable access to applications, resources and services, and are fully managed by a cloud services provider. Another boring description but stay with me!


In simple words AWS allows you to do the following things:
  1. Run web and application servers in the cloud by EC2 or Elastic Beanstalk.
  2. Securely store all your files on the cloud with S3.
  3. Easily create and use databases like Dynamo, MySQL, PostgreSQL, Oracle or SQL Server to store information(No more boring maintenance and backups).
  4. Deliver static and dynamic files quickly around the world using a Content Delivery Network (CDN) → (Thanks to Cloudfront).
  5. Easily send emails or SMS to your desired group of people. (Let’s send spam emails ).

Now that you know what you can do with AWS, let's take a look at an overview of various AWS services.



Basic Terminologies

  1. Region — A region is a geographical location which consists of 2 (or more) availability zones.
  2. Availability Zone — Datacenter in a region which has separate power, networking and connectivity from other zones in the same region.
  3. Edge Location — CDN (Content Delivery Network) endpoints for CloudFront. You should look into CDN as well - a fantastic topic for networking.

Compute

  1. EC2 (Elastic Compute Cloud) — A virtual machine where you choose the OS. You can connect to it via ssh and do whatever you want :)
  2. Elastic Beanstalk — Simply, put your project inside and everything is handled by AWS.
  3. Lambda — AWS’s serverless technology that allows you to run functions in the cloud in many different programming languages. (It’s cheap if you know how to use it)

Storage

  1. S3 (Simple Storage Service) — Storage service of AWS in which we can store objects like files, folders, images, documents, songs, etc. (Really cool if you use it together with Cloudfront)

Databases

  1. RDS (Relational Database Service) — You can use relational dbs such as MySQL, MariaDB, PostgreSQL, Oracle or SQL Server without any license. These databases are fully managed by AWS in terms of maintenance and backups.
  2. DynamoDB — A highly scalable, high-performance NoSQL database. It provides single-digit millisecond latency at any scale.

Networking & Content Delivery

  1. VPC (Virtual Private Cloud) — You can isolate your services or resources by putting them into a VPC.
  2. CloudFront - Simply consists of Edge Locations that can cache your data which results in better response times.
  3. Route53 — It is AWS’s highly available DNS (Domain Name System) service. You can register domain names through it.
  4. API Gateway — Allows you to create, store and manage APIs at scale. (Perfect combo with AWS Lambda)

Developer Tools

  1. CodeBuild — You can automatically build your code with the desired library.
  2. CodeDeploy — You can automatically deploy your code to EC2 instances.
  3. CodePipeline — Allows you to keep track of different steps in your deployment like building, testing, authentication, and deployment on development and production environments.

Analytics

  1. Athena — You can use SQL queries in your S3 buckets to find files or find one line of a log file, etc.

Security, Identity, and Compliance

  1. IAM (Identity and Access Management) — Allows you to manage users, assign policies, and create groups to manage multiple users.

Application Services

  1. SNS (Simple Notification Service) — Can be used to send notifications in the form of email and SMS based upon your AWS services. It is a push-based service.

Having an overview of these services helps you to understand the power of cloud computing.
I mentioned a whole lot of services but I will go in-depth of core AWS services in the upcoming parts. See you soon!