What is Serverless Architecture?

2020-10-20 16:14:54
Blog picture

Serverless architectures make it easy to deploy apps in the cloud. Developers can run the app code without the hassle of deploying and maintaining servers. Cloud providers manage servers for you.

Serverless architecture is a method for creating and launching apps without the need for a server or any other underlying infrastructure management. Serverless architecture is also known as serverless computing or Function as a Service (FaaS).

With serverless architecture, a third-party service hosts your app and manages server-side logic and state. Hence, the term ‘serverless’ does not mean there are no servers at all. Instead, it means there are no servers for the developer to worry about.

Developers can focus on business logic, and individual app code functions. Serverless platforms execute the functions on demand. Think of not worrying about the management of physical, or virtual servers as well as databases. Pure coding.

From On-Premises to Serverless

Since traditional, on-premises architectures moved to the cloud, the form of providing services has changed over the years. 

This is how marketers highlight the path to serverless:

  • IaaS, or Infrastructure as a Service, virtualizes standard server infrastructure. Developers run their code on a virtual machine, a virtual server located in the cloud data center. These systems are highly configurable and provide administrators with control over compute power, storage and network services. Examples: Google Compute Engine, and Digital Ocean
  • PaaS, or Platform as a Service, free developers from configuring and managing hardware resources. Developers only manage containers that execute an app. Examples: Salesforce Heroku and Google App Engine
  • FaaS, or Function as a Service, provides the ability to manage only the code. In a complex infrastructure, developers execute snippets of code in response to events. Examples: AWS Lambda service and VoxEngine

How Does Serverless Work?

FaaS executes function calls in response to events or HTTP requests. Developers enter code fragments into a FaaS architecture. These fragments are executed discreetly, providing automatic scaling depending on the load, without the need for developers to manage servers or low-level infrastructure.

Let’s consider an example: a user takes a photo and uploads it to the cloud. The loading process includes:

  • Reading EXIF data
  • Preparing a small image for preview
  • Content analysis with machine learning
  • Image data entry into a database

The image upload event triggers all these functions. Once the event is processed, the functions stop working. This is how FaaS works: it quickly launches code to perform tasks triggered by an event and then disappears.

What Apps Best Fit Serverless Architectures?

Developers should consider serverless if there is a small number of functions that need to be hosted. Serverless fits RESTful and event-driven apps. Instead of paying for servers that are idle most of the time, you can run the code as a function.

Sign Up for a free Voximplant developer account or talk to our experts

Add your comment


Your comment has been added and will be published after moderation.

Recommended posts

Where CPaaS Deploy their Networks - a Comparison

Where CPaaS Deploy their Networks - a Comparison

A couple weeks ago, Amazon Web Services (AWS) experienced an outage in its US-EAST-1 region. As so many services rely on AWS, this outage had a broader impact, causing outages and various issues with Amazon’s own Ring services, online retailers, and even the New York City MTA. In addition, a couple major Communications Platform as a Service (CPaaS) providers also reported issues (Voximplant was not impacted), potentially impacting the communications of many of their customers.  With this in mind, now is a good time to look at how CPaaS offers leverage public cloud infrastructure and review the factors involved in providing reliable, high quality communications services. In this post we will review the public cloud infrastructure used by several major CPaaS vendors and discuss the implications of their choices.

Personalized Service 101: What it is and How to Deliver it

Personalized Service 101: What it is and How to Deliver it

For many consumers, personalized customer service is key to good customer experiences (CX). According to a 2020 survey by Gladly, close to two-thirds of respondents said that “lack of personalization makes [them] feel like a ticket number.” Businesses wishing to meet and exceed customer expectations need to make personalized service a top priority. But personalization goes beyond making movie recommendations or using a customer’s name in an email subject line. When it comes to personalized service, it’s paramount that you deliver relevant, valuable, and speedy support to promote positive customer experiences. In this article, we’ll break down what personalized service means, why it’s so important to CX, and how you can deliver personalization service to your customers.