DEV Community

felino33
felino33

Posted on

Completely serverless architecture using AWS services. Part 1

Introduction:
Despite its name, serverless does not mean a serverless existence. Rather, it indicates a
change in responsibility: developers no longer need to manage, provision, or view the
underlying servers. This allows them to focus on creating efficient code without the distractions
of server complexities.

By entering serverless computing services, where developers can be freed from server
management.

Image description

Serverless means serverless, it is a solution that allows you to create and run applications
quickly and with a lower total cost of ownership, since it is not necessary to provision and
manage infrastructure.

Of course, behind it there are servers to run the applications, but the cloud provider is
in charge of the administration, therefore, on our side we stop worrying about managing
servers, operating systems, software and other resources, and we only focus on the
application code.

Key Services and Features:
Serverless means serverless, it is a solution that allows you to create and run applications
quickly and with a lower total cost of ownership, since it is not necessary to provision and
manage infrastructure.
Let's explore the key services and features of this AWS architecture:

1-AWS Lambda:
AWS Lambda, a pioneer in serverless computing, introduces virtual functions that
eliminate the need for manual server management. Focusing on
For short executions, Lambda operates on demand, ensuring efficient resource
utilization. Its automated scaling feature adapts perfectly to different workloads, ensuring
optimal performance. Lambda is integrated with many programming languages
and a full set of AWS services and can be easily monitored through AWS cloudwatch.
AWS Lambda serves as an ideal solution to run our cloud-native API code
efficiently while maintaining minimal costs.

2-Aurora Serverless:
A powerhouse in the cloud database space, Aurora fully supports Postgres and
MySQL. Positioned as “optimized for the AWS cloud,” Aurora boasts a notable 5x
performance improvement over MySQL on RDS and over 3x the performance over Postgres
on RDS. Offering up to 15 replicas with a faster replication process than MySQL. With instant
failover, it is inherently designed for High Availability (HA), although it has a slightly
higher cost than RDS (20% more), its efficiency and performance make it a compelling
option for storing our API structured data.

3-Amazon Simple Storage Service (S3):
S3 is one of the most popular offerings from AWS. S3 is a highly available, durable objectbased storage service. S3 allows objects (files) to be stored in buckets with a globally
unique name. In this case, we use S3 to store the API binary image data (JPEG, JPG, PNG).

4-API Gateway:
AWS Lambda together with API Gateway presents a hassle-free solution with no
infrastructure management. API Gateway not only supports HTTP and REST protocols
but also WebSocket protocol and also skillfully handles API version control (such as v1,
v2) and various environments (development, test, production). API Gateway also covers
authentication and authorization, along with the ability to create API keys and manage
request throttling. In addition, it excels in transforming and validating requests and
responses, allowing the generation of SDKs and API specifications. With the added
ability to cache API responses, API Gateway offers a comprehensive and efficient
ecosystem for developing and managing APIs.

5-Benefits
AWS Serverless offers significant benefits in terms of scalability, agility, and reduced operating
costs. However, it is essential to perform a detailed cost-benefit analysis specific to
your particular use case and business model. This will allow you to make informed
decisions about adopting AWS Serverless and ensure that your applications are
economically efficient, including providing an efficient, scalable, and cost-effective way to
develop and run applications in the cloud.

These benefits can help organizations optimize their operations, accelerate application
development, and improve the availability and security of their systems.

6-Spectrum of serverless services.
Developers using a serverless architecture don't have to worry about policies for extending their code. The
serverless provider handles all on-demand scaling. As a result, a serverless application will be able to handle an
unusually high number of requests as well as it can process a single request from a single user. A
traditionally structured application with a fixed amount of server space can be overwhelmed by a sudden increase
in usage.

7-What we can do with Serverless

AWS Serverless offers a wide range of services and capabilities that allow you to build
applications without worrying about server management. Here are some of the things you can
do with AWS Serverless:

-Data Stream.
-Chatbots and Virtual Assistants.
-Task Automation.
-Data Processing.
-Automatic Scalability.

Within AWS, Serverless services are highly flexible and allow you to use a combination of services to meet specific needs.
Additionally, you only pay for the amount of resources you actually use, which can result in lower costs compared to traditional server provisioning.

This is a little tour of some AWS serverless services, feel free to comment.
Luis Enrique Aguilar.

Top comments (0)