Managing asynchronous workloads in a multi‐tenant microservice enterprise environment

Cesar Batista, Felipe Morais, Everton Cavalcante, Thais Batista, Bruno Proença, William Breno Rodrigues Cavalcante
{"title":"Managing asynchronous workloads in a multi‐tenant microservice enterprise environment","authors":"Cesar Batista, Felipe Morais, Everton Cavalcante, Thais Batista, Bruno Proença, William Breno Rodrigues Cavalcante","doi":"10.1002/spe.3278","DOIUrl":null,"url":null,"abstract":"Abstract A multi‐tenant microservice architecture involving components with asynchronous interactions and batch jobs requires efficient strategies for managing asynchronous workloads. This article addresses this issue in the context of a leading company developing tax software solutions for many national and multi‐national corporations in Brazil. A critical process provided by the company's cloud‐based solutions encompasses tax integration, which includes coordinating complex tax calculation tasks and needs to be supported by asynchronous operations using a message broker to guarantee order correctness. We explored and implemented two approaches for managing asynchronous workloads related to tax integration within a multi‐tenant microservice architecture in the company's context: (i) a polling‐based approach that employs a queue as a distributed lock (DL) and (ii) a push‐based approach named single active consumer (SAC) that relies on the message broker's logic to deliver messages. These approaches aim to achieve efficient resource allocation when dealing with a growing number of container replicas and tenants. In this article, we evaluate the correctness and performance of the DL and SAC approaches to shed light on how asynchronous workloads impact the management of multi‐tenant microservice architectures from delivery and deployment perspectives.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":"19 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Software: Practice and Experience","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1002/spe.3278","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Abstract A multi‐tenant microservice architecture involving components with asynchronous interactions and batch jobs requires efficient strategies for managing asynchronous workloads. This article addresses this issue in the context of a leading company developing tax software solutions for many national and multi‐national corporations in Brazil. A critical process provided by the company's cloud‐based solutions encompasses tax integration, which includes coordinating complex tax calculation tasks and needs to be supported by asynchronous operations using a message broker to guarantee order correctness. We explored and implemented two approaches for managing asynchronous workloads related to tax integration within a multi‐tenant microservice architecture in the company's context: (i) a polling‐based approach that employs a queue as a distributed lock (DL) and (ii) a push‐based approach named single active consumer (SAC) that relies on the message broker's logic to deliver messages. These approaches aim to achieve efficient resource allocation when dealing with a growing number of container replicas and tenants. In this article, we evaluate the correctness and performance of the DL and SAC approaches to shed light on how asynchronous workloads impact the management of multi‐tenant microservice architectures from delivery and deployment perspectives.
在多租户微服务企业环境中管理异步工作负载
多租户微服务架构涉及具有异步交互和批处理作业的组件,需要有效的策略来管理异步工作负载。本文在一家领先的公司为巴西的许多国家和跨国公司开发税务软件解决方案的背景下解决了这个问题。该公司基于云的解决方案提供的关键流程包括税务集成,其中包括协调复杂的税务计算任务,需要使用消息代理的异步操作来支持,以保证订单的正确性。我们探索并实现了两种方法来管理与公司上下文中多租户微服务架构中的税务集成相关的异步工作负载:(i)基于轮询的方法,采用队列作为分布式锁(DL); (ii)基于推送的方法,称为单活动消费者(SAC),依赖于消息代理的逻辑来传递消息。这些方法的目的是在处理越来越多的容器副本和租户时实现有效的资源分配。在本文中,我们评估了DL和SAC方法的正确性和性能,以从交付和部署的角度阐明异步工作负载如何影响多租户微服务架构的管理。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术文献互助群
群 号:481959085
Book学术官方微信