Resource Allocation in Serverless Computing

Resource Allocation in Serverless Computing

Copyright: © 2024 |Pages: 10
DOI: 10.4018/979-8-3693-1682-5.ch002
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

This book chapter introduces readers to the dynamic and transformative world of serverless computing. With the focus on agility, scalability, and cost-effectiveness for developing and deploying applications, serverless computing has become a game-changer. The chapter's introduction to serverless computing provides a clear understanding of its fundamental principles and concepts, setting it apart from conventional computing models. Specifically, it explores the fundamental aspects of serverless architectures, emphasizing critical components such as functions as a service (FaaS), event driven programming, and the involvement of cloud providers in this setting. The chapter discusses the potential of serverless systems to optimize resource usage, speed up development, and adapt to changing user preferences while minimizing operational expenses. The chapter highlights practical use cases and success stories that demonstrate how serverless has been successfully implemented in various industries and domains.
Chapter Preview
Top

1. Introduction

Serverless computing is a revolutionary cloud computing execution model that has transformed the way applications are built and deployed. In this model, cloud providers handle the allocation of machine resources dynamically and efficiently, relieving customers from the burdensome tasks of managing servers and infrastructure. The term “serverless” was coined by Ken Fromm in 2012, encapsulating the essence of this paradigm shift(Grobmann et al, 2019).

Serverless cloud computing provides backends as a service (BaaS) and functionality as a service (FaaS), such as the shown in Figure 1. BaaS includes services such as storage, messaging, and user management. FaaS, on the other hand, allows developers to deploy and run code on computing platforms. FaaS relies on services provided by BaaS, such as databases, messaging, and user authentication. FaaS is considered the most dominant model of serverless and is also referred to as “event-driven functionality.”(Villamizar et al,2017)

Figure 1.

Serverless architecture

979-8-3693-1682-5.ch002.f01

1.1 Dynamic Resource Allocation

To cope with peak loads, organizations in traditional server centric models had to provision and maintain their servers, frequently overestimating their capacity needs. Cloud providers like AWS Lambda, Azure Functions, and Google Cloud Function can allocate resources on demand through serverless computing, which enhances this approach. Moreover, this means that instead of manual capacity planning, computing resources are allocated only when a particular function or piece of code needs to be executed.

1.2 Lowering Expenses

The use of serverless computing as a pay as you go pricing model is transforming cost-conscious businesses. In standard server-based models, customers are charged for server instances regardless of whether they are actively processing requests or idling. When it comes to serverless systems, customers pay only for the computational resources used in executing functions (Kulkarni et al., 2019). The implementation of cost efficiency not only cuts down on operational expenses but also fosters experimentation and innovation.

1.3 Scalability Reduced to a Simpler Level

Scalability of applications is facilitated by serverless computing. Whenever function executions are initiated due to traffic spikes or new events, cloud providers automatically adjust the required resources to handle the load. By using elastic scaling, applications are able to adjust to changes in demand without manual adjustment. The era of adding servers or worrying about traffic spikes is gone.

1.4 Backend Code Optimization

Developers in the serverless era may choose to concentrate solely on writing code for the essential features of their application. The implementation of serverless platforms eliminates backend operations like server provisioning, scaling and load balancing. By utilizing a simplified development process, teams can focus on creating features and improving user experiences, which in turn shortens the time to market(Jambunathan et al., 2018).

Complete Chapter List

Search this Book:
Reset