DEV Community


Posted on • Updated on


The most used AWS services

Over 200 services are available through Amazon Web Services (AWS). Today I'm going to have a short introduction of some most used services in AWS

ECR: Amazon Container Registry


  • it's a repository for docker images
  • it stores, manages and deploys Docker container images

Alternative Options: Dockerhub, Nexus


  • it integrates well with other AWS services like ECS, EKS
  • - easy to connect and configure with them
  • - notify when new image comes
  • - pull images automatically

Some examples

  • Push a docker image to ECR
ecr repo name : test

aws ecr get-login-password --region us-east-1 | dokcer login --username AWS --password-stdin

docker tag test:latest

docker push

Enter fullscreen mode Exit fullscreen mode

ECS: Elastic Container Service


Amazon Elastic Container Service (Amazon ECS) is a container orchestration platform that runs and manages Docker containers, like what we do in Kubernetes, but it also does managing service that operates it and provisions hardware resources

Main sections

  • Cluster: it's like a logical group of hardware resources (such as EC2s)
  • Task: it's a template that contains metadata bout how you should deploy your docker container onto a machine, like CPU, memory, port mapping, envs, ...
  • Service: it's for advance use cases like auto-scaling, load-balancing, blue-green deployments, ...

Alternative options: EKS

EC2: Elastic Cloud Compute

It's like a remote computer and whenever you need it, tear it down or up.

  • It's extremely flexible
  • security

Alternative options: Fargate



If you want to run your container 24x7 you'll be much better off running it on an EC2 instance.

However, if your containers only run briefly to complete a task and then exit, or if they scale up and down based on demand it will be much easier for you to run them in Fargate - you won't need to scale up and down the underlying EC2 cluster to support the load.

With Fargate you pay premium for the flexibility.

Alternative options: EC2

S3: Amazon S3


  • it's designed for large-capacity, low-cost file storage
  • it keeps files in one specific geographical region
  • cost of storage and bandwidth are quite low

Amazon CloudFront

Amazon CloudFront

  • it's a CDN (Content Delivery Network)
  • data are at edge locations as close to users as possible
  • the data served by CloudFront my or may not come from S3
  • bandwidth cost is a little more
  • if your user base is localized, you won't see too much to use CloudFront, but needs to choose the right location for your S3 bucket.

Alternative options: Cloudflare, Akamai, ...



  • AWS Lambda is the AWS platform's event-driven serverless computing solution.
  • With lambda functions (FaaS), you don't need to worry about the complexity in infrastructure and cluster or ECS
  • You just upload your code and get an arn for your functionality.
  • You can integrate Lambda with API Getaways.
  • You can make a http service, new file, change db, send a message in queue,...
  • Lambda can be called with S3, Kinesis, DynamoDB, SQS, Api Gateway

Alternative options: Azure Functions and Google Cloud Functions



  • It's a backend data store in AWS
  • DynamoDB is a NoSQL database

Alternatives: MongoDB, Cassandra

API Gateway


Amazon Relational Database Service (RDS) is a collection of managed services that makes it simple to set up, operate, and scale databases in the cloud.

  • Amazon RDS Multi-AZ deployments provide enhanced availability for database instances within a single AWS Region. With Multi-AZ, your data is synchronously replicated to a standby in a different Availability Zone (AZ).



Simply put, AppSync is to GraphQL interface, It makes it easy to build scalable GraphQL APIs and also makes short work of difficult tasks in API Gateway.

IAM: Identity and Access Management

it provides fine-grained access control across all of AWS. With IAM, you can specify who can access which services and resources, and under which conditions.


  • It enables users to track, collect and analyze their performance and operational application data running on AWS services.
  • It also provides unified dashboards, alarm systems and logs

example : send alarms to Slack

Send alarms to Slack with CloudWatch

Bastion Host

A bastion host is a server whose purpose is to provide access to a private network from an external network, such as the Internet. Because of its exposure to potential attack, a bastion host must minimize the chances of penetration.

AWS Systems Manager Parameter Store

Parameter Store, a capability of AWS Systems Manager, provides secure, hierarchical storage for configuration data management and secrets management. You can store data such as passwords, database strings, Amazon Machine Image (AMI) IDs, and license codes as parameter values


Top comments (2)

braincuber_technologies profile image
Braincuber Technologies

good explanation

Timeless DEV post...

Git Concepts I Wish I Knew Years Ago

The most used technology by developers is not Javascript.

It's not Python or HTML.

It hardly even gets mentioned in interviews or listed as a pre-requisite for jobs.

I'm talking about Git and version control of course.

One does not simply learn git