Azevedo, Isabel De Fátima SilvaFERREIRA, MIGUEL ALVES2025-09-082025-09-082025-07-22http://hdl.handle.net/10400.22/30406In recent years, there has been an increasing interest in enhancing the performance of software systems. Concurrently, energy efficiency has emerged as a significant concern in this new decade [1]. This is primarily due to two factors: the correlation between higher energy consumption and increased costs [2], and the growing environmental concerns [3]. Consequently, a wide variety of good practices and patterns [2] for software systems have been developed. Furthermore, despite the extensive array of technologies available, there is an absence of prevalent utilisation of these technologies in conjunction with one another. This is despite the potential for enhanced performance and energy efficiency that such combinations could offer. One such example is the integration of Protocol Buffers with the HTTP REST architecture. It is already established that Protocol Buffers are a proven solution for enhanced performance [4]. Consequently, there is a lack of comparison of Protocol Buffers in this type of architecture with other established serialisation formats, such as JSON. The present study was thus conceived to compare Protocol Buffers to JSON in an HTTP REST architecture in terms of performance and energy efficiency, to ascertain the viability of Protocol Buffers in this ecosystem in terms of performance and energy efficiency. In order to achieve this objective, it was necessary to migrate an open-source Java project that possessed either one of the serialisation mechanisms to its counterpart. The findings indicate that, for performance metrics such as throughput and average response time, Protocol Buffers demonstrate superiority when the endpoint under evaluation requires substantial serialisation. Furthermore, with regard to energy efficiency, a similar trend is evident in cases where serialisation is more intense. In such cases, Protocol Buffers demonstrate superior energy efficiency.Nos últimos anos, tem-se verificado um interesse crescente em melhorar o desempenho dos sistemas de software. Ao mesmo tempo, a eficiência energética surgiu como uma preocupação significativa nesta nova década [1]. Isto deve-se principalmente a dois problemas crescentes: a correlação entre um maior consumo de energia e o aumento dos custos [2], e as crescentes preocupações ambientais [3]. Consequentemente, foi desenvolvida uma grande variedade de boas práticas e padrões[2] para sistemas de software. Além disso, apesar do vasto leque de tecnologias disponíveis, não se verifica uma utilização predominante destas tecnologias em conjunto. Apesar do potencial de melhoria do desempenho e da eficiência energética que tais combinações podem oferecer. Um exemplo disso é a integração dos Protocol Buffers com a arquitetura HTTP REST. Já está estabelecido que os Protocol Buffers são uma solução comprovada para melhorar o desempenho [4]. Contudo, não existe uma comparação dos Protocol Buffers neste tipo de arquitetura com outros formatos de serialização estabelecidos, como o JSON. Este estudo foi assim concebido para comparar os Protocol Buffers com o JSON numa arquitetura HTTP REST em termos de desempenho e de eficiência energética, de forma a verificar a viabilidade dos Protocol Buffers neste ecossistema. Para atingir este objetivo, foi necessário migrar um projeto Java open source que possuía um dos mecanismos de serialização para o seu homólogo. Os resultados indicam que, para métricas de desempenho como o rendimento e o tempo médio de resposta, a utilização de Protocol Buffers pode ser mais vantajosa quando o endpoint em avaliação exige uma serialização substancial. Além do mais, no que respeita à eficiência energética, o mesmo padrão é observado, ou seja, nos casos em que a serialização é mais intensa, os Protocol Buffers tem melhor efficiência energética.engJSONProtocol BuffersRESTserialisationperformanceenergy efficiencySerializaçãoDesempenhoEficiência energéticaComparing JSON and Protocol Buffers in HTTP-based REST architectures: performance and energy efficiencymaster thesis203995988