Special issue on efficient management of microservice-based systems and applications

Minxian Xu, Schahram Dustdar, Massimo Villari, Rajkumar Buyya
{"title":"Special issue on efficient management of microservice-based systems and applications","authors":"Minxian Xu, Schahram Dustdar, Massimo Villari, Rajkumar Buyya","doi":"10.1002/spe.3298","DOIUrl":null,"url":null,"abstract":"<p>The advent of microservice architecture marks a transition from conventional monolithic applications to a landscape of loosely linked, lightweight, and autonomous microservice components. The primary objective is to ensure strong environmental uniformity, portability across various operating systems, and robust resource isolation. Leading cloud service providers such as Amazon, Microsoft, Google, and Alibaba have widely embraced microservices within their infrastructures. This adoption is geared toward automating application management and optimizing system performance. Consequently, addressing the automation of tasks like deployment, maintenance, auto-scaling, and networking of microservices becomes pivotal. This underscores the importance of efficient management of systems and applications built on microservices as a critical research challenge.</p>\n<p>Efficient management methods must not only ensure the quality of service (QoS) across multiple microservices units (containers) but also provide greater control over individual components. However, the dynamic and varied nature of microservice applications and environments significantly amplifies the complexity of these management approaches. Each microservice unit can be deployed and operated independently, catering to distinct functionalities and business objectives. Furthermore, microservices can interact and combine through lightweight communication techniques to form a complete application. The expanding scale of microservice-based systems and their intricate interdependencies pose challenges in terms of load distribution and resource management at the infrastructure level. Furthermore, as cloud workloads surge in resource demands, bandwidth consumption, and QoS requirements, the traditional cloud computing environment extends to fog and edge infrastructures that are in close proximity to end users. As a result, current microservice management approaches need further enhancement to address the mounting resource diversity, application distribution, workload profiles, security prerequisites, and scalability demands across hybrid cloud infrastructures.</p>\n<p>Keeping this in mind, this special issue addressed some of the aspects related to efficient management of microservice-based systems and applications with the focus on various challenges faced, and promising solutions to address such challenges by using software engineering, machine learning and deep learning techniques. We have received 21 submissions in this issue, and we accepted six high-quality submissions for publication after a rigorous review process with at least three reviewers for each paper. The authors are from diverse countries, including the USA, China, UK, Germany, India, Brazil, etc. Each of the accepted papers is summarized as follows.</p>\n<p>In the first article, Batista et al.<span><sup>1</sup></span> presented two strategies for handling asynchronous workloads associated with tax integration in a multi-tenant microservice architecture specific to the company's context. The initial approach utilizes polling, employing a queue as a distributed lock. The second approach, named the single active consumer, adopts a push-based technique, leveraging the message broker's logic for message delivery. These methodologies are designed to optimize resource allocation in scenarios involving an increasing number of container replicas and tenants.</p>\n<p>In the second article, Kumar et al.<span><sup>2</sup></span> introduced a resource allocation model designed to enhance the QoS in microservice deployment. Utilizing a Fine-tuned Sunflower Whale Optimization Algorithm, the model strategically deploys container-based services on physical machines, optimizing their execution capacity by efficiently utilizing CPU and memory resources. The primary objective of this proposed technique is to achieve an efficient distribution of workload, preventing resource wastage and ultimately enhancing QoS parameters.</p>\n<p>In the third paper, Zhu et al.<span><sup>3</sup></span> introduced RADF, a semi-automatic approach for decomposing a monolith into serverless functions by analyzing the inherent business logic present in the application's interface. The proposed method employs a two-stage refactoring strategy, initially performing a coarse-grained decomposition followed by a fine-grained one. This approach streamlines the decomposition process into smaller, more manageable steps, providing adaptability to generate a solution at either the microservice or function level.</p>\n<p>In the fourth paper, Würz et al.<span><sup>4</sup></span> identified the principal tasks and subtasks of the application for the purpose of partitioning. Subsequently, they outlined the program flow to ascertain which application tasks could be transformed into functions and elucidated their interdependencies. In the concluding step, they precisely specified individual functions and, if necessary, consolidated those deemed excessively small to mitigate communication overhead or maintenance challenges. In contrast to the previous methodologies, their approach is universally applicable to applications of varying sizes, ensuring that the resulting functions are appropriately sized for efficient execution within a Function as a Service environment.</p>\n<p>In the fifth paper, Zhong et al.<span><sup>5</sup></span> introduced DOMICO, a methodology designed to assess the conformance between a domain model and its implementation. This conformance is established through the formalization of eight common structural patterns in domain modeling and their representations in both the models and the associated source codes. Utilizing this formalization, the approach can pinpoint discrepancies, such as deviations, omissions, and modifications, concerning pattern elements. Furthermore, DOMICO is capable of detecting potential violations of 24 compliance rules imposed by these patterns.</p>\n<p>In the sixth paper, Zhang et al.<span><sup>6</sup></span> proposed a chunk reuse mechanism aimed at efficiently identifying node-local duplicate data during container updates. This mechanism contributes to a reduction in the volume of data transmission needed for image building. The authors manage the chunk reuse mechanism process for both cloud and remote-cloud nodes, ensuring that the associated resource overhead from the preparation of container update data and image reconstruction remains within acceptable thresholds.</p>\n<p>We hope that the accepted contributions in this special issue will help readers of the journal and the wider research community gain knowledge on the presented research challenges, techniques, and solutions. We also hope that it will encourage them to further work on different aspects of efficient management of microservice-based clusters.</p>","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2023-11-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Software: Practice and Experience","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1002/spe.3298","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

The advent of microservice architecture marks a transition from conventional monolithic applications to a landscape of loosely linked, lightweight, and autonomous microservice components. The primary objective is to ensure strong environmental uniformity, portability across various operating systems, and robust resource isolation. Leading cloud service providers such as Amazon, Microsoft, Google, and Alibaba have widely embraced microservices within their infrastructures. This adoption is geared toward automating application management and optimizing system performance. Consequently, addressing the automation of tasks like deployment, maintenance, auto-scaling, and networking of microservices becomes pivotal. This underscores the importance of efficient management of systems and applications built on microservices as a critical research challenge.

Efficient management methods must not only ensure the quality of service (QoS) across multiple microservices units (containers) but also provide greater control over individual components. However, the dynamic and varied nature of microservice applications and environments significantly amplifies the complexity of these management approaches. Each microservice unit can be deployed and operated independently, catering to distinct functionalities and business objectives. Furthermore, microservices can interact and combine through lightweight communication techniques to form a complete application. The expanding scale of microservice-based systems and their intricate interdependencies pose challenges in terms of load distribution and resource management at the infrastructure level. Furthermore, as cloud workloads surge in resource demands, bandwidth consumption, and QoS requirements, the traditional cloud computing environment extends to fog and edge infrastructures that are in close proximity to end users. As a result, current microservice management approaches need further enhancement to address the mounting resource diversity, application distribution, workload profiles, security prerequisites, and scalability demands across hybrid cloud infrastructures.

Keeping this in mind, this special issue addressed some of the aspects related to efficient management of microservice-based systems and applications with the focus on various challenges faced, and promising solutions to address such challenges by using software engineering, machine learning and deep learning techniques. We have received 21 submissions in this issue, and we accepted six high-quality submissions for publication after a rigorous review process with at least three reviewers for each paper. The authors are from diverse countries, including the USA, China, UK, Germany, India, Brazil, etc. Each of the accepted papers is summarized as follows.

In the first article, Batista et al.1 presented two strategies for handling asynchronous workloads associated with tax integration in a multi-tenant microservice architecture specific to the company's context. The initial approach utilizes polling, employing a queue as a distributed lock. The second approach, named the single active consumer, adopts a push-based technique, leveraging the message broker's logic for message delivery. These methodologies are designed to optimize resource allocation in scenarios involving an increasing number of container replicas and tenants.

In the second article, Kumar et al.2 introduced a resource allocation model designed to enhance the QoS in microservice deployment. Utilizing a Fine-tuned Sunflower Whale Optimization Algorithm, the model strategically deploys container-based services on physical machines, optimizing their execution capacity by efficiently utilizing CPU and memory resources. The primary objective of this proposed technique is to achieve an efficient distribution of workload, preventing resource wastage and ultimately enhancing QoS parameters.

In the third paper, Zhu et al.3 introduced RADF, a semi-automatic approach for decomposing a monolith into serverless functions by analyzing the inherent business logic present in the application's interface. The proposed method employs a two-stage refactoring strategy, initially performing a coarse-grained decomposition followed by a fine-grained one. This approach streamlines the decomposition process into smaller, more manageable steps, providing adaptability to generate a solution at either the microservice or function level.

In the fourth paper, Würz et al.4 identified the principal tasks and subtasks of the application for the purpose of partitioning. Subsequently, they outlined the program flow to ascertain which application tasks could be transformed into functions and elucidated their interdependencies. In the concluding step, they precisely specified individual functions and, if necessary, consolidated those deemed excessively small to mitigate communication overhead or maintenance challenges. In contrast to the previous methodologies, their approach is universally applicable to applications of varying sizes, ensuring that the resulting functions are appropriately sized for efficient execution within a Function as a Service environment.

In the fifth paper, Zhong et al.5 introduced DOMICO, a methodology designed to assess the conformance between a domain model and its implementation. This conformance is established through the formalization of eight common structural patterns in domain modeling and their representations in both the models and the associated source codes. Utilizing this formalization, the approach can pinpoint discrepancies, such as deviations, omissions, and modifications, concerning pattern elements. Furthermore, DOMICO is capable of detecting potential violations of 24 compliance rules imposed by these patterns.

In the sixth paper, Zhang et al.6 proposed a chunk reuse mechanism aimed at efficiently identifying node-local duplicate data during container updates. This mechanism contributes to a reduction in the volume of data transmission needed for image building. The authors manage the chunk reuse mechanism process for both cloud and remote-cloud nodes, ensuring that the associated resource overhead from the preparation of container update data and image reconstruction remains within acceptable thresholds.

We hope that the accepted contributions in this special issue will help readers of the journal and the wider research community gain knowledge on the presented research challenges, techniques, and solutions. We also hope that it will encourage them to further work on different aspects of efficient management of microservice-based clusters.

查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
关于基于微服务的系统和应用程序的有效管理的特刊
微服务架构的出现标志着传统的单片应用程序向松散链接、轻量级和自治的微服务组件的过渡。主要目标是确保强大的环境一致性、跨各种操作系统的可移植性和健壮的资源隔离。亚马逊、微软、谷歌和阿里巴巴等领先的云服务提供商已经在其基础设施中广泛采用了微服务。这种采用是为了自动化应用程序管理和优化系统性能。因此,解决微服务的部署、维护、自动扩展和联网等任务的自动化问题变得至关重要。这强调了高效管理基于微服务的系统和应用程序的重要性,这是一项关键的研究挑战。有效的管理方法不仅要确保跨多个微服务单元(容器)的服务质量(QoS),还要对单个组件提供更好的控制。然而,微服务应用程序和环境的动态性和多样性极大地增加了这些管理方法的复杂性。每个微服务单元都可以独立部署和操作,以满足不同的功能和业务目标。此外,微服务可以通过轻量级通信技术进行交互和组合,形成一个完整的应用程序。基于微服务的系统规模的扩大及其复杂的相互依赖关系在基础设施级别的负载分配和资源管理方面提出了挑战。此外,随着云工作负载在资源需求、带宽消耗和QoS需求方面的激增,传统的云计算环境扩展到离最终用户很近的雾和边缘基础设施。因此,当前的微服务管理方法需要进一步增强,以解决不断增加的资源多样性、应用程序分布、工作负载配置文件、安全性先决条件和跨混合云基础架构的可伸缩性需求。考虑到这一点,本期专题讨论了与基于微服务的系统和应用程序的有效管理相关的一些方面,重点关注所面临的各种挑战,以及通过使用软件工程、机器学习和深度学习技术来解决这些挑战的有希望的解决方案。我们收到了21篇投稿,经过严格的评审程序,每篇论文至少有三位审稿人,我们接受了6篇高质量的投稿发表。作者来自不同的国家,包括美国、中国、英国、德国、印度、巴西等。每一篇被接受的论文总结如下。在第一篇文章中,Batista等人介绍了两种策略,用于在特定于公司上下文的多租户微服务架构中处理与税务集成相关的异步工作负载。最初的方法利用轮询,使用队列作为分布式锁。第二种方法称为单个活动使用者,它采用基于推送的技术,利用消息代理的逻辑进行消息传递。这些方法旨在优化涉及容器副本和租户数量不断增加的场景中的资源分配。在第二篇文章中,Kumar等人2介绍了一种旨在增强微服务部署中的QoS的资源分配模型。该模型利用微调的向日葵鲸鱼优化算法,在物理机器上战略性地部署基于容器的服务,通过有效利用CPU和内存资源来优化其执行能力。该技术的主要目标是实现工作负载的有效分配,防止资源浪费,并最终增强QoS参数。在第三篇论文中,Zhu等人3介绍了RADF,这是一种半自动方法,通过分析应用程序接口中存在的固有业务逻辑,将单体分解为无服务器功能。所建议的方法采用两阶段重构策略,首先执行粗粒度分解,然后执行细粒度分解。这种方法将分解过程简化为更小、更易于管理的步骤,提供了在微服务或功能级别生成解决方案的适应性。在第四篇论文中,w<s:1> rz等人4确定了用于分区的应用程序的主要任务和子任务。随后,他们概述了程序流程,以确定哪些应用程序任务可以转换为功能,并阐明了它们之间的相互依赖性。在最后的步骤中,他们精确地指定单个功能,如果有必要,还会合并那些被认为太小的功能,以减轻通信开销或维护挑战。 与前面的方法相反,它们的方法普遍适用于不同大小的应用程序,确保结果函数的大小适当,以便在功能即服务环境中有效执行。在第五篇论文中,Zhong等人介绍了DOMICO,这是一种用于评估领域模型及其实现之间一致性的方法。这种一致性是通过领域建模中8种常见结构模式的形式化以及它们在模型和相关源代码中的表示来建立的。利用这种形式化,该方法可以查明与模式元素有关的差异,例如偏差、遗漏和修改。此外,DOMICO能够检测到这些模式所施加的24条合规规则的潜在违规行为。在第六篇论文中,Zhang等人6提出了一种块重用机制,旨在在容器更新期间有效识别节点本地重复数据。这种机制有助于减少图像构建所需的数据传输量。作者管理云和远程云节点的块重用机制过程,确保容器更新数据和图像重建准备的相关资源开销保持在可接受的阈值范围内。我们希望在本期特刊中接受的投稿将帮助期刊的读者和更广泛的研究社区获得有关当前研究挑战、技术和解决方案的知识。我们还希望这将鼓励他们进一步在基于微服务的集群的有效管理的不同方面进行工作。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Algorithms for generating small random samples A comprehensive survey of UPPAAL‐assisted formal modeling and verification Large scale system design aided by modelling and DES simulation: A Petri net approach Empowering software startups with agile methods and practices: A design science research Space‐efficient data structures for the inference of subsumption and disjointness relations
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1