Serverless - Session 1

Links

  1. Evolution of Cloud Image

  2. What is serverless? Link

  3. AWS Services for Serverless Architecture

  4. What is Infrastructure-as-code or IaC

  5. Understanding IaC in AWS Link

  6. Various technologies/libraries/frameworks for IaC

  7. IaC technologies/libraries/frameworks for serverless infra specifically

  8. Comparisons

  9. Application to convert to serverless

  10. Reasons to choose serverless framework for the above conversion:

    • Easier to start with
    • Less config
    • Amazing dashboard
  11. Tutorial Links for Serverless framework

More Information

  • Another HUGE advantage of using IaC is you will NOT just leave behind running services. With a single command you can bring down all the “X” number of services and hence save yourself from getting a bill from AWS (or other cloud providers) as it’s difficult to track them when you are provisioning “stuff” on their console.
  • AWS SAM or Serverless framework both use CloudFormation (CFN) internally. They translate the yaml files written for according to their requirements to CFN templates and send it to AWS to setup the infrastructure.
  • You can use serverless framework with Terraform (if required)

NOTE:
If you do find more resources, or if the links provided in the topic are broken, please to comment and provide replacements/add-ons.

3 Likes

Notes from Today’s Session:


Why Serverless?

First we had on premises data centers, we then moved to rental physical servers to virtualization and then to rental cloud servers. Virtualization allows you to abstract the server setup.
AWS brought along EC2 that allows to provision server in one click. This cloud shift allowed for PaaS, FaaS, SaaS, BaaS.

FaaS

  • Serverless is a application of FaaS.
  • two services from AWS specifically, AWS lambda, AWS api gateway.
  • Lambda allows you to write code and put it on lambda, add things to it and run it on AWS, without thinking about the infrastructure, provisioning and scaling. This allows for pay per use, pay for what you use.
  • Lambda is the building block for server-less. With lambda’s auto-scaling we don’t have to think about future requirements, it scales as needed.
  • To make lambda accessible to everyone, we need an API gateway (a path to our service).
  • AWS has API gateway service which can be paired together to make a backend.

API Types

  • Rest Api

    • One query has one response ( The connection is opened with the query and closed with the response ).
    • It allows user to check config of request body before activating lamda, HTTP api doesn’t allow for such checking.
  • HTTP Api

    • Rest api is costlier than HTTP api.
    • HTTP api are generally are preferred for most applications, see differences between Rest api and HTTP api.
  • WebSocket

    • A two way communication channel. This allows for continuous connection; opening it and closing it requires special calls.
2 Likes