Serverless Event-driven Applications Development Tools and Techniques

I. Morenets, A. Shabinskiy
{"title":"Serverless Event-driven Applications Development Tools and Techniques","authors":"I. Morenets, A. Shabinskiy","doi":"10.18523/2617-3808.2020.3.36-41","DOIUrl":null,"url":null,"abstract":"Serverless, a new cloud-based architecture, brings development and deployment flexibility to a new level by significantly decreasing the size of the deployment units. Nevertheless, it still hasn’t been clearly defined for which applications it should be employed and how to use it most effectively, and this is the focus of this research. The study uses Microsoft Azure Functions – one of the popular mature tools – because of its stateful orchestrators – Durable Functions. The tool is used to present and describe four flexible serverless patterns with code examples. The first pattern is HTTP nanoservices. The example demonstrates how flexible can be the Function-asa-Service model, which uses relatively small functions as deployment units. The second usage scenario described is a small logic layer between a few other cloud services. Thanks to its event-driver nature, serverless is well-suited for such tasks as making an action in one service after a specific event from another one. New functions easily integrate with the API from the first example. The third scenario – distributed computing – relies on the ability of Durable Functions to launch a myriad of functions in parallel and then aggregate their results. and distributed computing. A custom MapReduce implementation is presented in this section. The last pattern described in this research significantly simplifies concurrent working with mutable data by implementing the actor model. Durable Entities guarantee that messages are delivered reliably and in order, and also the absence of deadlocks. The results of this work can be used as a practical guide to serverless main concepts and usage scenarios. Main topic of future research was chosen to be the development of a full-fledged serverless application using typical patterns to study the architecture in more depth.","PeriodicalId":433538,"journal":{"name":"NaUKMA Research Papers. Computer Science","volume":"5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-12-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"NaUKMA Research Papers. Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.18523/2617-3808.2020.3.36-41","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Serverless, a new cloud-based architecture, brings development and deployment flexibility to a new level by significantly decreasing the size of the deployment units. Nevertheless, it still hasn’t been clearly defined for which applications it should be employed and how to use it most effectively, and this is the focus of this research. The study uses Microsoft Azure Functions – one of the popular mature tools – because of its stateful orchestrators – Durable Functions. The tool is used to present and describe four flexible serverless patterns with code examples. The first pattern is HTTP nanoservices. The example demonstrates how flexible can be the Function-asa-Service model, which uses relatively small functions as deployment units. The second usage scenario described is a small logic layer between a few other cloud services. Thanks to its event-driver nature, serverless is well-suited for such tasks as making an action in one service after a specific event from another one. New functions easily integrate with the API from the first example. The third scenario – distributed computing – relies on the ability of Durable Functions to launch a myriad of functions in parallel and then aggregate their results. and distributed computing. A custom MapReduce implementation is presented in this section. The last pattern described in this research significantly simplifies concurrent working with mutable data by implementing the actor model. Durable Entities guarantee that messages are delivered reliably and in order, and also the absence of deadlocks. The results of this work can be used as a practical guide to serverless main concepts and usage scenarios. Main topic of future research was chosen to be the development of a full-fledged serverless application using typical patterns to study the architecture in more depth.
无服务器事件驱动应用程序开发工具和技术
无服务器是一种新的基于云的架构,通过显著减少部署单元的大小,将开发和部署的灵活性提升到了一个新的水平。然而,它应该用于哪些应用以及如何最有效地使用它仍然没有明确的定义,这是本研究的重点。该研究使用了Microsoft Azure Functions——一种流行的成熟工具——因为它有状态编排器——持久函数。该工具用于通过代码示例展示和描述四种灵活的无服务器模式。第一种模式是HTTP纳米服务。该示例演示了功能即服务模型的灵活性,该模型使用相对较小的功能作为部署单元。描述的第二个使用场景是在几个其他云服务之间的一个小逻辑层。由于其事件驱动程序的特性,无服务器非常适合这样的任务,例如在来自另一个服务的特定事件之后在一个服务中执行操作。新函数很容易与第一个示例中的API集成。第三种场景——分布式计算——依赖于持久函数并行启动无数函数,然后聚合它们的结果的能力。以及分布式计算。本节将介绍一个自定义MapReduce实现。本研究中描述的最后一个模式通过实现参与者模型大大简化了对可变数据的并发处理。持久实体保证消息的可靠和有序传递,并且没有死锁。这项工作的结果可以作为无服务器主要概念和使用场景的实用指南。未来研究的主要主题是使用典型模式开发成熟的无服务器应用程序,以更深入地研究该体系结构。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信