Exploring maintainability and performance in Ballerina Microservices

Detalhes bibliográficos
Autor(a) principal: Alves, André Filipe Ribeiro
Data de Publicação: 2023
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Texto Completo: http://hdl.handle.net/10400.22/23737
Resumo: Microservices architecture currently is the industry norm for creating applications since it allows teams to focus on individual services related to specific business functionalities, reducing the overall application complexity and improving its maintainability. However, microservices architecture has liabilities regarding service integration, communication, governance, and data management. To solve these liabilities, the industry and academic community have focused on creating new frameworks and solutions. More recently, the focus changed to creating new programming languages focused on microservices. This study aims to investigate the effects of language-oriented approaches in developing microservices. The work focuses on Ballerina, a programming language created to simplify the creation and integration of microservices. From the literature’s analysis, Ballerina demonstrates the ability to be more beneficial than the most common implementations of microservices that use more common frameworks. To further investigate these statements, an experience based on the migration of existing microservices developed in Java with the use of the framework Spring Boot was conducted. This experience used a migration strategy created based on the language’s specificities. The resulting Ballerina microservice is compared with its original counterpart. The experience focused on analyzing both solutions in terms of maintainability and performance. Therefore, the Goals, Questions, Metrics (GQM) approach was used to obtain metrics for the mentioned quality attributes. From the obtained results, it was concluded that the Ballerina solution presents differences from the Spring Boot solution, being superior regarding maintainability and inferior in performance.
id RCAP_ec9d923dd0a74c19de222fb002e052ea
oai_identifier_str oai:recipp.ipp.pt:10400.22/23737
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling Exploring maintainability and performance in Ballerina MicroservicesMicroservice ArchitectureBallerinaLanguage-Based ApproachSpring BootMicroservices architecture currently is the industry norm for creating applications since it allows teams to focus on individual services related to specific business functionalities, reducing the overall application complexity and improving its maintainability. However, microservices architecture has liabilities regarding service integration, communication, governance, and data management. To solve these liabilities, the industry and academic community have focused on creating new frameworks and solutions. More recently, the focus changed to creating new programming languages focused on microservices. This study aims to investigate the effects of language-oriented approaches in developing microservices. The work focuses on Ballerina, a programming language created to simplify the creation and integration of microservices. From the literature’s analysis, Ballerina demonstrates the ability to be more beneficial than the most common implementations of microservices that use more common frameworks. To further investigate these statements, an experience based on the migration of existing microservices developed in Java with the use of the framework Spring Boot was conducted. This experience used a migration strategy created based on the language’s specificities. The resulting Ballerina microservice is compared with its original counterpart. The experience focused on analyzing both solutions in terms of maintainability and performance. Therefore, the Goals, Questions, Metrics (GQM) approach was used to obtain metrics for the mentioned quality attributes. From the obtained results, it was concluded that the Ballerina solution presents differences from the Spring Boot solution, being superior regarding maintainability and inferior in performance.Azevedo, Isabel de Fátima SilvaREPOSITÓRIO P.PORTOAlves, André Filipe Ribeiro2023-10-23T11:10:13Z20232023-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/23737urn:tid:203371534enginfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2025-03-07T10:22:19Zoai:recipp.ipp.pt:10400.22/23737Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-29T00:50:55.489125Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv Exploring maintainability and performance in Ballerina Microservices
title Exploring maintainability and performance in Ballerina Microservices
spellingShingle Exploring maintainability and performance in Ballerina Microservices
Alves, André Filipe Ribeiro
Microservice Architecture
Ballerina
Language-Based Approach
Spring Boot
title_short Exploring maintainability and performance in Ballerina Microservices
title_full Exploring maintainability and performance in Ballerina Microservices
title_fullStr Exploring maintainability and performance in Ballerina Microservices
title_full_unstemmed Exploring maintainability and performance in Ballerina Microservices
title_sort Exploring maintainability and performance in Ballerina Microservices
author Alves, André Filipe Ribeiro
author_facet Alves, André Filipe Ribeiro
author_role author
dc.contributor.none.fl_str_mv Azevedo, Isabel de Fátima Silva
REPOSITÓRIO P.PORTO
dc.contributor.author.fl_str_mv Alves, André Filipe Ribeiro
dc.subject.por.fl_str_mv Microservice Architecture
Ballerina
Language-Based Approach
Spring Boot
topic Microservice Architecture
Ballerina
Language-Based Approach
Spring Boot
description Microservices architecture currently is the industry norm for creating applications since it allows teams to focus on individual services related to specific business functionalities, reducing the overall application complexity and improving its maintainability. However, microservices architecture has liabilities regarding service integration, communication, governance, and data management. To solve these liabilities, the industry and academic community have focused on creating new frameworks and solutions. More recently, the focus changed to creating new programming languages focused on microservices. This study aims to investigate the effects of language-oriented approaches in developing microservices. The work focuses on Ballerina, a programming language created to simplify the creation and integration of microservices. From the literature’s analysis, Ballerina demonstrates the ability to be more beneficial than the most common implementations of microservices that use more common frameworks. To further investigate these statements, an experience based on the migration of existing microservices developed in Java with the use of the framework Spring Boot was conducted. This experience used a migration strategy created based on the language’s specificities. The resulting Ballerina microservice is compared with its original counterpart. The experience focused on analyzing both solutions in terms of maintainability and performance. Therefore, the Goals, Questions, Metrics (GQM) approach was used to obtain metrics for the mentioned quality attributes. From the obtained results, it was concluded that the Ballerina solution presents differences from the Spring Boot solution, being superior regarding maintainability and inferior in performance.
publishDate 2023
dc.date.none.fl_str_mv 2023-10-23T11:10:13Z
2023
2023-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10400.22/23737
urn:tid:203371534
url http://hdl.handle.net/10400.22/23737
identifier_str_mv urn:tid:203371534
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833600722710560768