DEV Community

Rajdeep Das
Rajdeep Das

Posted on • Originally published at Medium on

Short Intro about serverless applications

Photo by Christina @ wocintechchat.com on Unsplash

What is serverless?

Serverless workloads are “event-driven workloads that aren’t concerned with aspects normally handled by server infrastructure.” Concerns like “how many instances to run” and “what operating system to use” are all managed by a Function as a Service platform (or FaaS), leaving developers free to focus on business logic.

The above definition by the spring.io group.

Generally when we talk about serverless architecture first things comes to mind is most popular Function as a service ( FaaS ) model on cloud.

What the heck is FaaS?

According to Wikipedia Function as a service (FaaS) is a category of cloud computing services that provides a platform allowing customers to develop, run, and manage application functionalities without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app. Building an application following this model is one way of achieving a “serverless” architecture, and is typically used when building microservices applications.

AWS Lambda was the first FaaS offering by a large public cloud vendor, followed by Google Cloud Functions, Microsoft Azure Functions, IBM/Apache’s OpenWhisk (open source) in 2016 and Oracle Cloud Fn (open source) in 2017.

Use cases for FaaS are associated with “on-demand” functionality that enables the supporting infrastructure to be powered down and not incurring charges when not in use. Examples include data processing (e.g., batch processing, stream processing, extract-transform-load (ETL)), Internet of things (IoT) services for Internet-connected devices, mobile applications, and web applications.

Let’s looks at a sample code example of firebase cloud function which supports node.js function as services. In the example, we build a REST endpoint with node.js and express framework. The below code currently in production as a backend service for a mobile app.

https://medium.com/media/7ed20259e5f6f21788941b81ebee8b62/href

Serverless characteristics?

Serverless applications have a number of specific characteristics, including:

  • Event-driven code execution with triggers
  • The platform handles all the starting, stopping, and scaling chores
  • Scales to zero, with low to no cost when idle
  • Stateless

The Image from spring.io

List of Resources for Serverless platform for getting started

  1. https://aws.amazon.com/lambda/
  2. https://firebase.google.com/docs/functions
  3. https://spring.io/serverless
  4. https://azure.microsoft.com/en-in/services/functions/

Thank you.

Top comments (0)