Structural Coupling for Microservices

Structural Coupling for Microservices
复制标题

微服务的结构耦合

DOI:
10.5220/0010481902800287
复制
发表时间:
2021
期刊:
ArXiv
影响因子:
--
通讯作者:
D. Taibi
D. Taibi
中科院分区:
--
文献类型:
--
作者:
Sebastiano Panichella;Mohammad Imranur Rahman;D. Taibi

文献摘要

被引文献

相似文献

云原生应用程序是“由(微)服务组成的分布式,弹性和水平可扩展的系统,这些服务将状态隔离在最少的有状态组件中”。因此,一个重要的属性是确保组成云原生应用程序的(微)服务之间的低耦合和高内聚。松散耦合和高度内聚的服务允许开发团队并行工作,减少团队之间的通信开销。然而,尽管实践者和研究人员都同意这个一般属性的重要性,但没有经过验证的指标来有效地测量或测试服务之间的实际耦合级别。在这项工作中,我们提出了计算和可视化微服务之间耦合的方法,通过扩展和调整传统结构耦合计算背后的概念。我们验证这些措施的案例研究涉及17个开源项目,我们提供了一个自动的方法来衡量他们。本研究的结果突出了这些指标如何提供给从业者的定量和可视化的服务组合,这可能是有用的设想先进的系统来监控服务的演变。
Cloud-native Applications are 'distributed, elastic and horizontal-scalable systems composed of (micro)services which isolate states in a minimum of stateful components'. Hence, an important property is to ensure a low coupling and a high cohesion among the (micro)services composing the cloud-native application. Loosely coupled and highly cohesive services allow development teams to work in parallel, reducing the communication overhead between teams. However, despite both practitioners and researchers agree on the importance of this general property, there are no validated metrics to effectively measure or test the actual coupling level between services. In this work, we propose ways to compute and visualize the coupling between microservices, by extending and adapting the concepts behind the computation of the traditional structural coupling. We validate these measures with a case study involving 17 open-source projects and we provide an automatic approach to measure them. The results of this study highlight how these metrics provide to practitioners a quantitative and visual view of services compositions, which can be useful to conceive advanced systems to monitor the evolution of the service.