Repository logo
 
Publication

Migration to Microservices: Effects on Energy Consumption, Performance and Maintainability

datacite.subject.fosEngenharia e Tecnologia
datacite.subject.sdg09:Indústria, Inovação e Infraestruturas
dc.contributor.advisorAzevedo, Isabel de Fátima Silva
dc.contributor.authorCAMPELO, JOÃO PEDRO DA COSTA
dc.date.accessioned2025-12-18T11:47:38Z
dc.date.available2025-12-18T11:47:38Z
dc.date.issued2025-10-31
dc.description.abstractThe migration to microservices has become a common practice in modern software development. This procedure involves dividing large monolithic applications into several small services that can be independently created, deployed, and scaled on their own. However, like any approach, it has its advantages, such as increasing performance, scalability, and robustness of the system; the impact of this transition on energy consumption has been the subject of discussion. Microservices enable better resource management by allowing upscaling or downscaling of components, hence leading to underutilization of resources. The use of microservices can lead to energy savings by using fewer resources to achieve the same results. Furthermore, containerization technologies can improve resource utilisation by minimising virtualisation overheads. However, the higher level of complexity of the microservices architectures may lead to increased energy consumption because such architectures often imply an increased level of network communication and data exchange between services. Therefore, the impacts of the transition to microservices on energy use are multidimensional and can be best understood when considering the application size and complexity, the infrastructure, and the particular details of the microservices architecture. While there are potential energy savings, it is important to thoroughly weigh the trade-offs and potential impacts on energy consumption before making the decision to migrate to microservices. The study shows that moving a monolithic application to microservices through pattern-based migration resulted in better system maintainability but led to increased energy usage and performance costs. The application of Green Software Patterns, such as containerisation, asynchronous communication and autoscaling, helped mitigate unnecessary waste and aligned resource usage with workload demand. The CQRS pattern achieved superior read-heavy operation performance yet distributed communication expenses resulted in decreased performance. The maintainability analysis showed that decoupling resulted in more than 90% reduction of propagation cost. The study demonstrates that migration and decomposition patterns increase the number of services which require additional energy, but sustainable design methods enable long-term advantages in scalability and adaptability and environmental sustainability.eng
dc.description.abstractA migração para microserviços tornou-se uma prática comum no desenvolvimento de software moderno. Este procedimento baseia-se na divisão de grandes aplicações monolíticas em vários serviços pequenos que podem ser criados, implementados e escalados de forma independente. No entanto, como qualquer abordagem, tem as suas vantagens, como o aumento do desempenho, da escalabilidade e da robustez do sistema; o impacto desta transição no consumo de energia tem sido alvo de discussão. Os microserviços permitem uma melhor gestão dos recursos, permitindo aumentar ou reduzir a escala dos componentes, o que leva à subutilização dos recursos. A utilização de microserviços pode levar à poupança de energia, uma vez que utiliza menos recursos para atingir os mesmos resultados. Ademais, as tecnologias de contentorização podem melhorar a utilização de recursos, minimizando as despesas gerais de virtualização. No entanto, o maior nível de complexidade das arquiteturas de microserviços pode levar a um maior consumo de energia, uma vez que essas arquiteturas implicam frequentemente o aumento da comunicação e da troca de informação entre serviços. Por conseguinte, os impactos da transição para microserviços na utilização de energia são multidimensionais e podem ser melhor compreendidos quando se considera a dimensão e a complexidade da aplicação, a infraestrutura e os detalhes específicos da arquitetura dos microserviços. Embora existam potenciais poupanças de energia, é importante avaliar cuidadosamente as soluções e os possíveis impactos no consumo de energia antes de tomar a decisão de migrar para os microserviços. O estudo mostra que a migração de um monolítico para microserviços resultou numa melhor manutenção do sistema, mas conduziu a um aumento do consumo de energia e dos custos de desempenho. A aplicação de padrões de Green Software, como a contentorização, a comunicação assíncrona e o escalonamento automático, ajudou a mitigar o desperdício desnecessário e alinhou a utilização de recursos com a procura da carga de trabalho. O padrão CQRS alcançou um desempenho superior em operações com elevado consumo de leitura, mas os custos com comunicação distribuída resultaram num desempenho reduzido. A análise de manutenibilidade mostrou que o desacoplamento resultou numa redução de mais de 90% no custo de propagação. O estudo demonstra que os padrões de migração e decomposição aumentam o número de serviços que requerem energia adicional, mas os métodos de design sustentáveis permitem vantagens a longo prazo em termos de escalabilidade, adaptabilidade e sustentabilidade ambiental.por
dc.identifier.tid204067430
dc.identifier.urihttp://hdl.handle.net/10400.22/31255
dc.language.isoeng
dc.rights.uriN/A
dc.subjectEnergy Consumption
dc.subjectMicroservices
dc.subjectMigration Patterns
dc.subjectDecomposition Patterns
dc.subjectMonolithic
dc.subjectQuality Attributes
dc.subjectConsumo Energético
dc.subjectMicroserviços
dc.subjectPadrões de Migração
dc.subjectPadrões de Decomposição
dc.subjectMonolítico
dc.subjectAtributos de Qualidade
dc.titleMigration to Microservices: Effects on Energy Consumption, Performance and Maintainabilityeng
dc.typemaster thesis
dspace.entity.typePublication
thesis.degree.nameMestrado em Engenharia Informática

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Tese_5941.pdf
Size:
5.89 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
4.03 KB
Format:
Item-specific license agreed upon to submission
Description: