ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing
Abstract Function-as-a-Service (FaaS) is an event-based reactive programming model where functions run in ephemeral stateless containers for short duration. For building complex serverless applications, function composition is crucial to coordinate and synchronize the workflow of an application. Som...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
SpringerOpen
2023-04-01
|
Series: | Journal of Cloud Computing: Advances, Systems and Applications |
Subjects: | |
Online Access: | https://doi.org/10.1186/s13677-023-00429-3 |
_version_ | 1797836224390496256 |
---|---|
author | Urmil Bharti Anita Goel S. C. Gupta |
author_facet | Urmil Bharti Anita Goel S. C. Gupta |
author_sort | Urmil Bharti |
collection | DOAJ |
description | Abstract Function-as-a-Service (FaaS) is an event-based reactive programming model where functions run in ephemeral stateless containers for short duration. For building complex serverless applications, function composition is crucial to coordinate and synchronize the workflow of an application. Some serverless orchestration systems exist, but they are in their primitive state and do not provide inherent support for non-trivial workflows like, Fork-Join. To address this gap, we propose a fully serverless and scalable design model ReactiveFnJ for Fork-Join workflow. The intent of this work is to illustrate a design which is completely choreographed, reactive, asynchronous, and represents a dynamic composition model for serverless applications based on Fork-Join workflow. Our design uses two innovative patterns, namely, Relay Composition and Master-Worker Composition to solve execution time-out challenges. As a Proof-of-Concept (PoC), the prototypical implementation of Split-Sort-Merge use case, based on Fork-Join workflow is discussed and evaluated. The ReactiveFnJ handles embarrassingly parallel computations, and its design does not depend on any external orchestration services, messaging services, and queue services. ReactiveFnJ facilitates in designing fully automated pipelines for distributed data processing systems, satisfying the Serverless Trilemma in true essence. A file of any size can be processed using our effective and extensible design without facing execution time-out challenges. The proposed model is generic and can be applied to a wide range of serverless applications that are based on the Fork-Join workflow pattern. It fosters the choreographed serverless composition for complex workflows. The proposed design model is useful for software engineers and developers in industry and commercial organizations, total solution vendors and academic researchers. |
first_indexed | 2024-04-09T15:06:27Z |
format | Article |
id | doaj.art-7eeb15338e3346f28c242aa7a6df0dcb |
institution | Directory Open Access Journal |
issn | 2192-113X |
language | English |
last_indexed | 2024-04-09T15:06:27Z |
publishDate | 2023-04-01 |
publisher | SpringerOpen |
record_format | Article |
series | Journal of Cloud Computing: Advances, Systems and Applications |
spelling | doaj.art-7eeb15338e3346f28c242aa7a6df0dcb2023-04-30T11:28:22ZengSpringerOpenJournal of Cloud Computing: Advances, Systems and Applications2192-113X2023-04-0112111610.1186/s13677-023-00429-3ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless ComputingUrmil Bharti0Anita Goel1S. C. Gupta2Department of Computer Science, Shaheed Rajguru College of Applied Sciences for Women, University of DelhiDepartment of Computer Science, Dyal Singh College, University of DelhiDepartment of Computer Science, Indian Institute of TechnologyAbstract Function-as-a-Service (FaaS) is an event-based reactive programming model where functions run in ephemeral stateless containers for short duration. For building complex serverless applications, function composition is crucial to coordinate and synchronize the workflow of an application. Some serverless orchestration systems exist, but they are in their primitive state and do not provide inherent support for non-trivial workflows like, Fork-Join. To address this gap, we propose a fully serverless and scalable design model ReactiveFnJ for Fork-Join workflow. The intent of this work is to illustrate a design which is completely choreographed, reactive, asynchronous, and represents a dynamic composition model for serverless applications based on Fork-Join workflow. Our design uses two innovative patterns, namely, Relay Composition and Master-Worker Composition to solve execution time-out challenges. As a Proof-of-Concept (PoC), the prototypical implementation of Split-Sort-Merge use case, based on Fork-Join workflow is discussed and evaluated. The ReactiveFnJ handles embarrassingly parallel computations, and its design does not depend on any external orchestration services, messaging services, and queue services. ReactiveFnJ facilitates in designing fully automated pipelines for distributed data processing systems, satisfying the Serverless Trilemma in true essence. A file of any size can be processed using our effective and extensible design without facing execution time-out challenges. The proposed model is generic and can be applied to a wide range of serverless applications that are based on the Fork-Join workflow pattern. It fosters the choreographed serverless composition for complex workflows. The proposed design model is useful for software engineers and developers in industry and commercial organizations, total solution vendors and academic researchers.https://doi.org/10.1186/s13677-023-00429-3Serverless computingFaaSEvent-driven function compositionChoreographyParallel computingDistributed computing |
spellingShingle | Urmil Bharti Anita Goel S. C. Gupta ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing Journal of Cloud Computing: Advances, Systems and Applications Serverless computing FaaS Event-driven function composition Choreography Parallel computing Distributed computing |
title | ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing |
title_full | ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing |
title_fullStr | ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing |
title_full_unstemmed | ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing |
title_short | ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing |
title_sort | reactivefnj a choreographed model for fork join workflow in serverless computing |
topic | Serverless computing FaaS Event-driven function composition Choreography Parallel computing Distributed computing |
url | https://doi.org/10.1186/s13677-023-00429-3 |
work_keys_str_mv | AT urmilbharti reactivefnjachoreographedmodelforforkjoinworkflowinserverlesscomputing AT anitagoel reactivefnjachoreographedmodelforforkjoinworkflowinserverlesscomputing AT scgupta reactivefnjachoreographedmodelforforkjoinworkflowinserverlesscomputing |