Fusionize++: Improving Serverless Application Performance Using Dynamic Task Inlining and Infrastructure Optimization

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Schirmer, Trever, Scheuner, Joel, Pfandzelter, Tobias, Bermbach, David
Formato: Preprint
Publicado: 2023
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866909355095359488
author Schirmer, Trever
Scheuner, Joel
Pfandzelter, Tobias
Bermbach, David
author_facet Schirmer, Trever
Scheuner, Joel
Pfandzelter, Tobias
Bermbach, David
contents The Function-as-a-Service (FaaS) execution model increases developer productivity by removing operational concerns such as managing hardware or software runtimes. Developers, however, still need to partition their applications into FaaS functions, which is error-prone and complex: Encapsulating only the smallest logical unit of an application as a FaaS function maximizes flexibility and reusability. Yet, it also leads to invocation overheads, additional cold starts, and may increase cost due to double billing during synchronous invocations. Conversely, deploying an entire application as a single FaaS function avoids these overheads but decreases flexibility. In this paper we present Fusionize, a framework that automates optimizing for this trade-off by automatically fusing application code into an optimized multi-function composition. Developers only need to write fine-grained application code following the serverless model, while Fusionize automatically fuses different parts of the application into FaaS functions, manages their interactions, and configures the underlying infrastructure. At runtime, it monitors application performance and adapts it to minimize request-response latency and costs. Real-world use cases show that Fusionize can improve the deployment artifacts of the application, reducing both median request-response latency and cost of an example IoT application by more than 35%.
format Preprint
id arxiv_https___arxiv_org_abs_2311_04875
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle Fusionize++: Improving Serverless Application Performance Using Dynamic Task Inlining and Infrastructure Optimization
Schirmer, Trever
Scheuner, Joel
Pfandzelter, Tobias
Bermbach, David
Distributed, Parallel, and Cluster Computing
The Function-as-a-Service (FaaS) execution model increases developer productivity by removing operational concerns such as managing hardware or software runtimes. Developers, however, still need to partition their applications into FaaS functions, which is error-prone and complex: Encapsulating only the smallest logical unit of an application as a FaaS function maximizes flexibility and reusability. Yet, it also leads to invocation overheads, additional cold starts, and may increase cost due to double billing during synchronous invocations. Conversely, deploying an entire application as a single FaaS function avoids these overheads but decreases flexibility. In this paper we present Fusionize, a framework that automates optimizing for this trade-off by automatically fusing application code into an optimized multi-function composition. Developers only need to write fine-grained application code following the serverless model, while Fusionize automatically fuses different parts of the application into FaaS functions, manages their interactions, and configures the underlying infrastructure. At runtime, it monitors application performance and adapts it to minimize request-response latency and costs. Real-world use cases show that Fusionize can improve the deployment artifacts of the application, reducing both median request-response latency and cost of an example IoT application by more than 35%.
title Fusionize++: Improving Serverless Application Performance Using Dynamic Task Inlining and Infrastructure Optimization
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2311.04875