{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T04:29:02Z","timestamp":1772166542656,"version":"3.50.1"},"reference-count":40,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2023,4,24]],"date-time":"2023-04-24T00:00:00Z","timestamp":1682294400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2023,4,24]],"date-time":"2023-04-24T00:00:00Z","timestamp":1682294400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["J Cloud Comp"],"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>\n                    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\n                    <jats:italic>ReactiveFnJ<\/jats:italic>\n                    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\n                    <jats:italic>ReactiveFnJ<\/jats:italic>\n                    handles embarrassingly parallel computations, and its design does not depend on any external orchestration services, messaging services, and queue services.\n                    <jats:italic>ReactiveFnJ<\/jats:italic>\n                    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.\n                  <\/jats:p>","DOI":"10.1186\/s13677-023-00429-3","type":"journal-article","created":{"date-parts":[[2023,4,24]],"date-time":"2023-04-24T08:04:25Z","timestamp":1682323465000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["ReactiveFnJ: A choreographed model for Fork-Join Workflow in Serverless Computing"],"prefix":"10.1186","volume":"12","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-2655-3001","authenticated-orcid":false,"given":"Urmil","family":"Bharti","sequence":"first","affiliation":[]},{"given":"Anita","family":"Goel","sequence":"additional","affiliation":[]},{"given":"S. C.","family":"Gupta","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2023,4,24]]},"reference":[{"key":"429_CR1","doi-asserted-by":"publisher","first-page":"215","DOI":"10.1016\/j.future.2021.06.004","volume":"124","author":"A Arjona","year":"2021","unstructured":"Arjona A, L\u00f3pez PG, Samp\u00e9 J, Slominski A, Villard L (2021) Triggerflow: Trigger-based orchestration of serverless workflows. Futur Gener Comput Syst 124:215\u2013229. https:\/\/doi.org\/10.1016\/j.future.2021.06.004","journal-title":"Futur Gener Comput Syst"},{"key":"429_CR2","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1186\/s13677-021-00253-7","volume":"10","author":"HB Hassan","year":"2021","unstructured":"Hassan HB, Barakat SA, Sarhan QI (2021) Survey on serverless computing. J Cloud Comput 10:1\u201329","journal-title":"J Cloud Comput"},{"key":"429_CR3","doi-asserted-by":"publisher","first-page":"340","DOI":"10.1016\/j.jss.2018.12.013","volume":"149","author":"P Leitner","year":"2019","unstructured":"Leitner P, Wittern E, Spillner J, Hummer W (2019) A mixed-method empirical study of Function-as-a-Service software development in industrial practice. J Syst Softw 149:340\u2013359","journal-title":"J Syst Softw"},{"key":"429_CR4","doi-asserted-by":"publisher","first-page":"148","DOI":"10.1109\/UCC-Companion.2018.00049","volume-title":"2018 IEEE\/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion)","author":"PG L\u00f3pez","year":"2018","unstructured":"L\u00f3pez PG, S\u00e1nchez-Artigas M, Par\\\u2019\\is G, Pons DB, Ollobarren \u00c1R, Pinto DA (2018) Comparison of FaaS orchestration systems. 2018 IEEE\/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion). pp 148\u2013153"},{"key":"429_CR5","doi-asserted-by":"crossref","unstructured":"Carver B, Zhang J, Wang A, Anwar A, Wu P, Cheng Y (2020) Wukong: A scalable and locality-enhanced framework for serverless parallel computing. In Proceedings of the 11th ACM Symposium on Cloud Computing, pp. 1-15.","DOI":"10.1145\/3419111.3421286"},{"key":"429_CR6","unstructured":"Pu Q, Venkataraman S, Stoica I (2019) Shuffling, Fast and Slow: Scalable Analytics on Serverless Infrastructure. In NSDI, vol. 19, pp. 193-206."},{"key":"429_CR7","doi-asserted-by":"publisher","first-page":"368","DOI":"10.1016\/j.future.2020.08.012","volume":"114","author":"S Ristov","year":"2021","unstructured":"Ristov S, Pedratscher S, Fahringer T (2021) AFCL: An abstract function choreography language for serverless workflow specification. Futur Gener Comput Syst 114:368\u2013382","journal-title":"Futur Gener Comput Syst"},{"key":"429_CR8","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1145\/3366623.3368137","volume-title":"Proceedings of the 5th International Workshop on Serverless Computing","author":"D Barcelona-Pons","year":"2019","unstructured":"Barcelona-Pons D, Garc\\\u2019\\ia-L\u00f3pez P, Ruiz \u00c1, G\u00f3mez-G\u00f3mez A, Par\\\u2019\\is G, S\u00e1nchez-Artigas M (2019) Faas orchestration of parallel workloads. Proceedings of the 5th International Workshop on Serverless Computing. pp 25\u201330"},{"key":"429_CR9","doi-asserted-by":"publisher","first-page":"199","DOI":"10.1007\/s11761-012-0125-z","volume":"7","author":"LAF Leite","year":"2013","unstructured":"Leite LAF, Oliva GA, Nogueira GM, Gerosa MA, Kon F, Milojicic DS (2013) A systematic literature review of service choreography adaptation. Serv Oriented Comput Appl 7:199\u2013216","journal-title":"Serv Oriented Comput Appl"},{"key":"429_CR10","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1186\/s40537-015-0032-1","volume":"2","author":"S Landset","year":"2015","unstructured":"Landset S, Khoshgoftaar TM, Richter AN, Hasanin T (2015) A survey of open source tools for machine learning with big data in the Hadoop ecosystem. J Big Data 2:1\u201336","journal-title":"J Big Data"},{"key":"429_CR11","doi-asserted-by":"publisher","first-page":"30","DOI":"10.1145\/3419111.3421280","volume-title":"Proceedings of the 11th ACM Symposium on Cloud Computing","author":"T Yu","year":"2020","unstructured":"Yu T, Liu Q, Du D, Xia Y, Zang B, Lu Z, Yang P, Qin C, Chen H (2020) Characterizing serverless platforms with serverlessbench. Proceedings of the 11th ACM Symposium on Cloud Computing. pp 30\u201344"},{"key":"429_CR12","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1145\/3133850.3133855","volume-title":"Proceedings of the 2017 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","author":"I Baldini","year":"2017","unstructured":"Baldini I, Cheng P, Fink SJ, Mitchell N, Muthusamy V, Rabbah R, Suter P, Tardieu O (2017) The serverless trilemma: Function composition for serverless computing. Proceedings of the 2017 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software. pp 89\u2013103. https:\/\/doi.org\/10.1145\/3133850.3133855"},{"key":"429_CR13","doi-asserted-by":"publisher","first-page":"154","DOI":"10.1109\/IC2E48712.2020.00023","volume-title":"2020 IEEE International Conference on Cloud Engineering (IC2E)","author":"J Kuhlenkamp","year":"2020","unstructured":"Kuhlenkamp J, Werner S, Tai S (2020) The ifs and buts of less is more: A serverless computing reality check. 2020 IEEE International Conference on Cloud Engineering (IC2E). pp 154\u2013161"},{"key":"429_CR14","doi-asserted-by":"publisher","first-page":"41","DOI":"10.1007\/978-3-030-78307-5_3","volume-title":"Technologies and Applications for Big Data Value","author":"P Garc\u00eda-L\u00f3pez","year":"2022","unstructured":"Garc\u00eda-L\u00f3pez P, S\u00e1nchez-Artigas M, Shillaker S, Pietzuch P, Breitgand D, Vernik G, Sutra P, Tarrant T, Juan-Ferrer A, Par\u00eds G (2022) Trade-Offs and Challenges of Serverless Data Analytics. In: Curry E, Auer S, Berre AJ, Metzger A, Perez MS, Zillner S (eds) Technologies and Applications for Big Data Value. Springer International Publishing, Cham, pp 41\u201361"},{"key":"429_CR15","doi-asserted-by":"publisher","first-page":"281","DOI":"10.1145\/3419111.3421287","volume-title":"Proceedings of the 11th ACM Symposium on Cloud Computing","author":"V Shankar","year":"2020","unstructured":"Shankar V, Krauth K, Vodrahalli K, Pu Q, Recht B, Stoica I, Ragan-Kelley J, Jonas E, Venkataraman S (2020) Serverless linear algebra. Proceedings of the 11th ACM Symposium on Cloud Computing. pp 281\u2013295"},{"key":"429_CR16","doi-asserted-by":"publisher","first-page":"372","DOI":"10.1109\/TCC.2018.2830348","volume":"9","author":"D Dai","year":"2018","unstructured":"Dai D, Chen Y, Kimpe D, Ross RB (2018) Trigger-based incremental data processing with unified sync and async model. IEEE Trans Cloud Comput 9:372\u2013385","journal-title":"IEEE Trans Cloud Comput"},{"key":"429_CR17","first-page":"1","volume-title":"Proceedings of the 19th International Middleware Conference Industry","author":"J Samp\u00e9","year":"2018","unstructured":"Samp\u00e9 J, Vernik G, S\u00e1nchez-Artigas M, Garc\\\u2019\\ia-L\u00f3pez P (2018) Serverless data analytics in the IBM cloud. Proceedings of the 19th International Middleware Conference Industry. pp 1\u20138"},{"key":"429_CR18","doi-asserted-by":"publisher","first-page":"55","DOI":"10.1109\/SOCA.2019.00016","volume-title":"2019 IEEE 12th Conference on Service-Oriented Computing and Applications (SOCA)","author":"A Christidis","year":"2019","unstructured":"Christidis A, Davies R, Moschoyiannis S (2019) Serving machine learning workloads in resource constrained environments: A serverless deployment example. 2019 IEEE 12th Conference on Service-Oriented Computing and Applications (SOCA). pp 55\u201363"},{"key":"429_CR19","unstructured":"Hellerstein JM, Faleiro J, Gonzalez JE, Schleier-Smith J, Sreekanti V, Tumanov A, Wu C\u00a0(2018) Serverless computing: One step forward, two steps back. arXiv preprint arXiv:1812.03651."},{"key":"429_CR20","doi-asserted-by":"publisher","first-page":"41","DOI":"10.1145\/3361525.3361535","volume-title":"Proceedings of the 20th international middleware conference","author":"D Barcelona-Pons","year":"2019","unstructured":"Barcelona-Pons D, S\u00e1nchez-Artigas M, Par\\\u2019\\is G, Sutra P, Garc\\\u2019\\ia-L\u00f3pez P (2019) On the faas track: Building stateful distributed applications with serverless architectures. Proceedings of the 20th international middleware conference. pp 41\u201354"},{"key":"429_CR21","doi-asserted-by":"publisher","first-page":"445","DOI":"10.1145\/3127479.3128601","volume-title":"Proceedings of the 2017 symposium on cloud computing","author":"E Jonas","year":"2017","unstructured":"Jonas E, Pu Q, Venkataraman S, Stoica I, Recht B (2017) Occupy the cloud: Distributed computing for the 99\\%. Proceedings of the 2017 symposium on cloud computing. pp 445\u2013451"},{"key":"429_CR22","unstructured":"Fouladi S, Wahby RS, Shacklett B, Balasubramaniam KV, Zeng W, Bhalerao R, Sivaraman A, Porter G, Winstein K (2017) Encoding, Fast and Slow:$\\{$Low-Latency$\\}$ Video Processing Using Thousands of Tiny Threads. 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI 17). pp 363\u2013376"},{"key":"429_CR23","doi-asserted-by":"publisher","first-page":"335","DOI":"10.1145\/2796314.2745859","volume-title":"Proceedings of the 2015 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems","author":"A Rizk","year":"2015","unstructured":"Rizk A, Poloczek F, Ciucu F (2015) Computable bounds in fork-join queueing systems. Proceedings of the 2015 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems. pp 335\u2013346. https:\/\/doi.org\/10.1145\/2796314.2745859"},{"key":"429_CR24","first-page":"789","volume-title":"2018 USENIX Annual Technical Conference (USENIX ATC 18)","author":"A Klimovic","year":"2018","unstructured":"Klimovic A, Wang Y, Kozyrakis C, Stuedi P, Pfefferle J, Trivedi A (2018) Understanding ephemeral storage for serverless analytics. 2018 USENIX Annual Technical Conference (USENIX ATC 18). pp 789\u2013794"},{"key":"429_CR25","volume-title":"Next-generation serverless system for contextual search based on rich media content","author":"V Holubiev","year":"2018","unstructured":"Holubiev V, Ihnatiuk B, Voytyuk I (2018) Next-generation serverless system for contextual search based on rich media content"},{"key":"429_CR26","doi-asserted-by":"crossref","unstructured":"Bharti U, Bajaj D, Goel A, Gupta SC (2021) A novel design approach exploiting data parallelism in serverless infrastructure. In Advances in Computing and Network Communications: Proceedings of CoCoNet 2020, Volume 1, pp. 247-260. Springer Singapore.","DOI":"10.1007\/978-981-33-6977-1_20"},{"key":"429_CR27","doi-asserted-by":"publisher","first-page":"259","DOI":"10.1016\/j.future.2019.02.057","volume":"97","author":"V Gim\u00e9nez-Alventosa","year":"2019","unstructured":"Gim\u00e9nez-Alventosa V, Molt\u00f3 G, Caballer M (2019) A framework and a performance assessment for serverless MapReduce on AWS Lambda. Futur Gener Comput Syst 97:259\u2013274","journal-title":"Futur Gener Comput Syst"},{"key":"429_CR28","doi-asserted-by":"crossref","unstructured":"Arfat Y, Usman S, Mehmood R, Katib I (2020) Big data for smart infrastructure design: Opportunities and challenges. Smart Infrastructure and Applications: Foundations for Smarter Cities and Societies 491-518.","DOI":"10.1007\/978-3-030-13705-2_20"},{"key":"429_CR29","doi-asserted-by":"publisher","first-page":"322","DOI":"10.1109\/69.494169","volume":"8","author":"L Zheng","year":"1996","unstructured":"Zheng L, Larson P-A (1996) Speeding up external mergesort. IEEE Trans Knowl Data Eng 8:322\u2013332","journal-title":"IEEE Trans Knowl Data Eng"},{"key":"429_CR30","first-page":"59","volume-title":"Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)","author":"E Zahoor","year":"2017","unstructured":"Zahoor E, Asma Z, Perrin O (2017) A formal approach for the verification of AWS IAM access control policies. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Springer, Cham, pp 59\u201374"},{"key":"429_CR31","first-page":"1","volume-title":"Proceedings of the 1st ACM SIGMOD Workshop on Scalable Workflow Execution Engines and Technologies","author":"M Islam","year":"2012","unstructured":"Islam M, Huang AK, Battisha M, Chiang M, Srinivasan S, Peters C, Neumann A, Abdelnur A (2012) Oozie: towards a scalable workflow management system for Hadoop. Proceedings of the 1st ACM SIGMOD Workshop on Scalable Workflow Execution Engines and Technologies. pp 1\u201310"},{"key":"429_CR32","first-page":"79","volume-title":"A workflow management system for the OR based on the OMG standards BPMN, CMMN, and DMN","author":"M Wiemuth","year":"2019","unstructured":"Wiemuth M, Burgert O (2019) A workflow management system for the OR based on the OMG standards BPMN, CMMN, and DMN. p 79"},{"key":"429_CR33","doi-asserted-by":"publisher","first-page":"328","DOI":"10.1145\/3419111.3421277","volume-title":"Proceedings of the 11th ACM Symposium on Cloud Computing","author":"W Zhang","year":"2020","unstructured":"Zhang W, Fang V, Panda A, Shenker S (2020) Kappa: A programming framework for serverless computing. Proceedings of the 11th ACM Symposium on Cloud Computing. pp 328\u2013343"},{"key":"429_CR34","doi-asserted-by":"publisher","first-page":"681","DOI":"10.1007\/978-981-15-8443-5_58","volume-title":"Proceedings of International Conference on Intelligent Computing, Information and Control Systems","author":"U Bharti","year":"2021","unstructured":"Bharti U, Bajaj D, Goel A, Gupta SC (2021) Sequential Workflow in Production Serverless FaaS Orchestration Platform. Proceedings of International Conference on Intelligent Computing, Information and Control Systems. pp 681\u2013693"},{"key":"429_CR35","doi-asserted-by":"publisher","first-page":"2032","DOI":"10.1109\/TPDS.2020.2982626","volume":"31","author":"PA Witte","year":"2020","unstructured":"Witte PA, Louboutin M, Modzelewski H, Jones C, Selvage J, Herrmann FJ (2020) An event-driven approach to serverless seismic imaging in the cloud. IEEE Trans Parallel Distrib Syst 31:2032\u20132049","journal-title":"IEEE Trans Parallel Distrib Syst"},{"key":"429_CR36","doi-asserted-by":"publisher","first-page":"268","DOI":"10.1016\/j.future.2021.06.005","volume":"124","author":"D Barcelona-Pons","year":"2021","unstructured":"Barcelona-Pons D, Garc\\\u2019\\ia-L\u00f3pez P (2021) Benchmarking parallelism in FaaS platforms. Futur Gener Comput Syst 124:268\u2013284","journal-title":"Futur Gener Comput Syst"},{"key":"429_CR37","doi-asserted-by":"publisher","first-page":"1591","DOI":"10.14778\/3529337.3529344","volume":"15","author":"S Burckhardt","year":"2022","unstructured":"Burckhardt S, Chandramouli B, Gillum C, Justo D, Kallas K, McMahon C, Meiklejohn CS, Zhu X (2022) Netherite: efficient execution of serverless workflows. Proc VLDB Endow 15:1591\u20131604","journal-title":"Proc VLDB Endow"},{"key":"429_CR38","doi-asserted-by":"publisher","first-page":"108993","DOI":"10.1016\/j.comnet.2022.108993","volume":"210","author":"A Sabbioni","year":"2022","unstructured":"Sabbioni A, Rosa L, Bujari A, Foschini L, Corradi A (2022) DIFFUSE: A DIstributed and decentralized platForm enabling Function composition in Serverless Environments. Comput Networks 210:108993","journal-title":"Comput Networks"},{"key":"429_CR39","doi-asserted-by":"publisher","first-page":"159","DOI":"10.1016\/S0020-0190(00)00098-3","volume":"75","author":"F-C Leu","year":"2000","unstructured":"Leu F-C, Tsai Y-T, Tang CY (2000) An efficient external sorting algorithm. Inf Process Lett 75:159\u2013163","journal-title":"Inf Process Lett"},{"key":"429_CR40","volume-title":"Conference: EIT New Zealand","author":"S Obrutsky","year":"2016","unstructured":"Obrutsky S (2016) Cloud storage: Advantages, disadvantages and enterprise solutions for business. Conference: EIT New Zealand"}],"container-title":["Journal of Cloud Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1186\/s13677-023-00429-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1186\/s13677-023-00429-3\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1186\/s13677-023-00429-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,4,24]],"date-time":"2023-04-24T20:03:15Z","timestamp":1682366595000},"score":1,"resource":{"primary":{"URL":"https:\/\/journalofcloudcomputing.springeropen.com\/articles\/10.1186\/s13677-023-00429-3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,4,24]]},"references-count":40,"journal-issue":{"issue":"1","published-online":{"date-parts":[[2023,12]]}},"alternative-id":["429"],"URL":"https:\/\/doi.org\/10.1186\/s13677-023-00429-3","relation":{"has-preprint":[{"id-type":"doi","id":"10.21203\/rs.3.rs-942960\/v1","asserted-by":"object"}]},"ISSN":["2192-113X"],"issn-type":[{"value":"2192-113X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,4,24]]},"assertion":[{"value":"26 September 2021","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"20 March 2023","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"24 April 2023","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no competing interests.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Competing interests"}}],"article-number":"63"}}