中文

微服务战术与模式减少能源消耗的有效性:面向能耗-性能-可维护性权衡的实证研究

软件工程 2025-12-04 v3

摘要

背景:微服务系统已在软件行业中确立地位。然而,与可持续性法规和日益增长的能耗高企的软件成本相关,能源效率变得越来越重要。虽然已有针对架构战术和模式的一些提议,但其效果以及对其他质量属性(QAs)的潜在权衡尚不明确。目标:因此,我们旨在研究微服务战术和模式减少能源消耗的有效性,以及与性能和可维护性之间的潜在权衡。方法:基于开源 Online Boutique 系统,我们进行了受控实验,检验了三个战术和三个模式,并分析了每种技术相对于基线的影响。我们还测试了三种模拟请求负载水平(低、中、高)。结果:请求负载调节了减少能源消耗的效果。所有技术(战术和模式)在至少一种负载水平下均减少了能源消耗,最高可达 5.6%。在性能方面,技术可能通过增加响应时间最高达 25.9%来产生负面影响,部分技术也可通过降低最高达 72.5%来提升性能。两个技术提高了吞吐量,分别提升了 1.9% 和 34.0%。在可维护性方面,三个技术产生负面影响,一个技术产生正面影响,两个技术无影响。结论:一些技术在减少能源消耗的同时也提升了性能。然而,这些技术通常涉及可维护性的权衡,例如通过更多代码重复和模块耦合。总体而言,所有技术在较高负载下显著减少能源消耗,但大多数技术都牺牲了其他某个 QAs。这凸显了真正的挑战不仅在于减少微服务的能源消耗,而在于实现能源效率。

关键词

引用

@article{arxiv.2501.14402,
  title  = {On the Effectiveness of Microservices Tactics and Patterns to Reduce Energy Consumption: An Experimental Study on Trade-Offs},
  author = {Xingwen Xiao and Chushu Gao and Justus Bogner},
  journal= {arXiv preprint arXiv:2501.14402},
  year   = {2025}
}

备注

Accepted for publication at the International Conference on Software Architecture 2025 (ICSA'25, see https://conf.researchr.org/home/icsa-2025)