Bibliograph. Daten | Kopp, David: Towards understanding the energy efficiency of different software architecture styles in cloud-based environments: a case study comparing microservices and modular monolith based on two variants of an example system. Universität Stuttgart, Fakultät Informatik, Elektrotechnik und Informationstechnik, Masterarbeit Nr. 133 (2024). 117 Seiten, englisch.
|
| Kurzfassung | Context. Currently, overcoming the climate crisis is a major and essential task for us humans, to which the software industry can and must also make a contribution. This thesis deals with possibilities to reduce the energy consumption caused by software, which is one aspect of Green Software Engineering. Problem. Software can require different amounts of energy for the same functionality, depending on how it is implemented and operated. This has received relatively little attention, partly because of a lack of awareness and knowledge. There is a need for more transparency and simple methods to measure the energy efficiency of software applications. There is also a lack of concrete recommendations for practical action on howto design and implement energy-efficient software. Objective. The objective of this thesis is to develop recommendations for architectural decisions for cloud-based web applications with the aim of improving energy efficiency. For this purpose, the two backend architecture styles microservices and modular monolith are compared with each other. Method. First, two applications with the same functionality are provided, one in a microservices architecture and one as a modular monolith. Then, measurements are performed with the Green Metrics Tool in an isolated measurement environment and with Kepler in a Kubernetes cluster to draw conclusions about the energy efficiency of the two architectural styles. Result. The results of the measurements with the Green Metrics Tool show that the monolithic reference system performs significantly better in simple scenarios. This is mainly due to higher response times in the microservices system as a result of network communication and data processing. Microservices have advantages as soon as scaling is required. Unfortunately, no representative measurements could be carried out with Kepler within the time frame of this thesis, so no concrete statements can yet be made in this regard. Conclusion. The scalability requirement of a software system plays a critical role in determining optimal architectural decisions for maximum energy efficiency. The pursuit of unlimited scalability can potentially negatively impact performance and energy efficiency when it is not needed at all. However, in scenarios with dynamic and high loads that require efficient scalability, fine-grained architectures such as microservices offer advantages. The migration from a microservices architecture to a modular monolith has also shown that modularity can be realized in both architectural styles, but with less complexity in the monolithic system.
|
Volltext und andere Links | Volltext
|
| Abteilung(en) | Universität Stuttgart, Institut für Softwaretechnologie, Softwarequalität und -architektur
|
| Betreuer | Becker, Prof. Steffen; Kutschera, Peter |
| Eingabedatum | 12. November 2025 |
|---|