July 7, 2022
Serverless Computing
Serverless Computing


Serverless computing has emerged as a powerful new paradigm for application and service delivery. It depicts the evolution of cloud programming models, abstractions, and platforms and is a testament to the maturity and widespread adoption of cloud technologies. This chapter examines existing serverless platforms in industry, academia, and open source projects, identifies key features and use cases, and describes technical challenges and unresolved issues.

Serverless cloud computing takes care of almost all of the system administration tasks required to make it easier for programmers to use the cloud. It offers an interface that greatly simplifies cloud programming and represents an evolution that runs parallel to the transition from assembly language to a high-level programming language. This white paper provides a brief history of cloud computing, including a description of the predictions in the 2009 Berkeley View of Cloud Computing white paper, explains the rationale for serverless computing, describes applications that push the current frontiers of serverless, and describes the obstacles and research opportunities. You need it to realize the full potential of serverless computing. Just as the 2009 white paper identified and addressed the challenges facing the cloud and predicted that cloud adoption will accelerate, so we can address these challenges and predict that serverless computing will dominate the future of cloud computing.

Presents the design of a new performance-oriented serverless computing platform implemented in .NET, deployed on Microsoft Azure and using Windows containers as the functional execution environment. Feature extension and implementation aspects such as container discovery, lifecycle, and reuse are covered in detail. We propose metrics to evaluate the execution performance of serverless platforms and perform tests on prototypes and deployments of IBM’s AWS Lambda, Azure Functions, Google Cloud Functions and Apache OpenWhisk. Our measurements show prototypes that achieve higher throughput than other platforms at most levels of concurrency and examine trends in instance scaling and flow in implementations. It also discusses gaps and limitations in the current design, suggests possible solutions, and highlights future research.