Gentili, Fabio
(2025)
Infrastructures to Support Dependency Injection in Serverless Cloud Computing.
[Laurea magistrale], Università di Bologna, Corso di Studio in
Ingegneria informatica [LM-DM270], Documento ad accesso riservato.
Documenti full-text disponibili:
![[thumbnail of Thesis]](https://amslaurea.unibo.it/style/images/fileicons/application_pdf.png) |
Documento PDF (Thesis)
Full-text non accessibile fino al 16 Luglio 2026.
Disponibile con Licenza: Salvo eventuali più ampie autorizzazioni dell'autore, la tesi può essere liberamente consultata e può essere effettuato il salvataggio e la stampa di una copia per fini strettamente personali di studio, di ricerca e di insegnamento, con espresso divieto di qualunque utilizzo direttamente o indirettamente commerciale. Ogni altro diritto sul materiale è riservato
Download (6MB)
| Contatta l'autore
|
Abstract
The flourishing adoption of Function as a Service (FaaS) platforms has revolutionized cloud computing, offering unparalleled scalability and cost efficiency through event-driven, ephemeral execution. However, the stateless and short-lived nature of FaaS functions, while advantageous for certain paradigms, presents significant challenges for managing complex application dependencies and state. In particular, the current state of art doesn’t provide efficient and dynamic strategies to facilitate the integration of Backend as a Service (BaaS) services into FaaS functions. Traditional software engineering practices, particularly Dependency Injection (DI), are often difficult to implement effectively within current FaaS environments. Developers typically resort to manual dependency management, leading to boilerplate code, reduced maintainability, and increased cold start times. This thesis proposes the introduction of a dedicated infrastructural support within FaaS platforms to implement Dependency Injection. This novel approach aims to streamline the development and deployment of sophisticated FaaS applications by abstracting away the complexities of dependency provisioning and lifecycle management. The proposed infrastructure would provide mechanisms for defining and registering dependencies, automatic injection into function invocations, and potentially caching frequently used dependencies. By integrating DI at the platform level, developers can leverage established software design patterns, enhancing code reusability, testability, and overall application robustness. This infrastructural support would mitigate cold start penalties, optimize resource utilization, and foster the development of more complex, enterprise-grade FaaS solutions, ultimately bridging the gap between traditional application development methodologies and the unique demands of serverless architectures.
Abstract
The flourishing adoption of Function as a Service (FaaS) platforms has revolutionized cloud computing, offering unparalleled scalability and cost efficiency through event-driven, ephemeral execution. However, the stateless and short-lived nature of FaaS functions, while advantageous for certain paradigms, presents significant challenges for managing complex application dependencies and state. In particular, the current state of art doesn’t provide efficient and dynamic strategies to facilitate the integration of Backend as a Service (BaaS) services into FaaS functions. Traditional software engineering practices, particularly Dependency Injection (DI), are often difficult to implement effectively within current FaaS environments. Developers typically resort to manual dependency management, leading to boilerplate code, reduced maintainability, and increased cold start times. This thesis proposes the introduction of a dedicated infrastructural support within FaaS platforms to implement Dependency Injection. This novel approach aims to streamline the development and deployment of sophisticated FaaS applications by abstracting away the complexities of dependency provisioning and lifecycle management. The proposed infrastructure would provide mechanisms for defining and registering dependencies, automatic injection into function invocations, and potentially caching frequently used dependencies. By integrating DI at the platform level, developers can leverage established software design patterns, enhancing code reusability, testability, and overall application robustness. This infrastructural support would mitigate cold start penalties, optimize resource utilization, and foster the development of more complex, enterprise-grade FaaS solutions, ultimately bridging the gap between traditional application development methodologies and the unique demands of serverless architectures.
Tipologia del documento
Tesi di laurea
(Laurea magistrale)
Autore della tesi
Gentili, Fabio
Relatore della tesi
Correlatore della tesi
Scuola
Corso di studio
Indirizzo
CURRICULUM INGEGNERIA INFORMATICA
Ordinamento Cds
DM270
Parole chiave
serverless, Dependency Injection, FaaS and BaaS integration, AWS Lambda, Azure Functions, Knative
Data di discussione della Tesi
22 Luglio 2025
URI
Altri metadati
Tipologia del documento
Tesi di laurea
(NON SPECIFICATO)
Autore della tesi
Gentili, Fabio
Relatore della tesi
Correlatore della tesi
Scuola
Corso di studio
Indirizzo
CURRICULUM INGEGNERIA INFORMATICA
Ordinamento Cds
DM270
Parole chiave
serverless, Dependency Injection, FaaS and BaaS integration, AWS Lambda, Azure Functions, Knative
Data di discussione della Tesi
22 Luglio 2025
URI
Gestione del documento: