Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação

Detalhes bibliográficos
Autor(a) principal: Chaves, Lucas Martins
Data de Publicação: 2024
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UPF
Texto Completo: https://repositorio.upf.br/handle/123456789/7501
Resumo: How microservices communicate is fundamental to the overall performance of a system. Therefore, there are various protocols and communication methods available in different programming languages. With this in mind, this work presents a testing model to identify performance behaviors among different communication methods applied to multiple languages. For this purpose, Elastic Stack observability resources are used to collect data and create visualizations of load tests generated with the K6 tool. To be subjected to the tests, three applications were developed in Go, JavaScript, and Python, implementing REST, gRPC, and GraphQL. The results show overall better performance in Go, superior performance of GraphQL for insertions, and similar behavior between GraphQL and REST, with a slight advantage for REST in handling large volumes of data.
id UPF_cff43d13a445eb1f72c9c442cd07ed65
oai_identifier_str oai:repositorio.upf.br:123456789/7501
network_acronym_str UPF
network_name_str Repositório Institucional da UPF
repository_id_str 1610
spelling Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programaçãoCiências da computaçãoMicrosserviçosProgramaçãoHow microservices communicate is fundamental to the overall performance of a system. Therefore, there are various protocols and communication methods available in different programming languages. With this in mind, this work presents a testing model to identify performance behaviors among different communication methods applied to multiple languages. For this purpose, Elastic Stack observability resources are used to collect data and create visualizations of load tests generated with the K6 tool. To be subjected to the tests, three applications were developed in Go, JavaScript, and Python, implementing REST, gRPC, and GraphQL. The results show overall better performance in Go, superior performance of GraphQL for insertions, and similar behavior between GraphQL and REST, with a slight advantage for REST in handling large volumes of data.Como os microsserviços se comunicam é fundamental para o desempenho geral de um sistema. Por isso, há diversos protocolos e formas disponíveis de comunicação em diferentes linguagens de programação. Com isso em mente, este trabalho apresenta um modelo de teste para identificar comportamentos de desempenho entre diferentes métodos de comunicação, aplicados a múltiplas linguagens. Para isso, utilizam-se recursos de observabilidade da Elastic Stack para coletar dados e criar visualizações dos testes de carga gerados com a ferramenta K6. Para serem submetidas aos testes, desenvolveram se três aplicações em Go, JavaScript e Python, implementando REST, gRPC e GraphQL. Nos resultados, nota-se um maior desempenho geral no Go, do GraphQL nas inserções e um comportamento parecido entre GraphQL e REST, com leve vantagem do REST em grande volume de dados.Universidade de Passo FundoInstituto de Ciências Exatas e Geociências - ICEGBrasilUPFBrusso, Marcos JoséChaves, Lucas Martins2025-05-10T22:26:54Z2024-12-04info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisapplication/pdfCHAVES, Lucas Martins. Comparativo de comunicação de microsserviços desenvolvidos em múltiplas linguagens de programação. 2024. 14 f. Artigo de Conclusão de Curso (Bacharel em Computação). Curso de Computação. Universidade de Passo Fundo, Passo Fundo, 2024.https://repositorio.upf.br/handle/123456789/7501porinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UPFinstname:Universidade de Passo Fundo (UPF)instacron:UPF2025-10-23T12:30:17Zoai:repositorio.upf.br:123456789/7501Repositório InstitucionalPRIhttp://repositorio.upf.br/oai/requestjucelei@upf.br||biblio@upf.bropendoar:16102025-10-23T12:30:17Repositório Institucional da UPF - Universidade de Passo Fundo (UPF)false
dc.title.none.fl_str_mv Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
title Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
spellingShingle Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
Chaves, Lucas Martins
Ciências da computação
Microsserviços
Programação
title_short Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
title_full Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
title_fullStr Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
title_full_unstemmed Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
title_sort Comparativo de comunicação de micros serviços desenvolvidos em múltiplas linguagens de programação
author Chaves, Lucas Martins
author_facet Chaves, Lucas Martins
author_role author
dc.contributor.none.fl_str_mv Brusso, Marcos José
dc.contributor.author.fl_str_mv Chaves, Lucas Martins
dc.subject.por.fl_str_mv Ciências da computação
Microsserviços
Programação
topic Ciências da computação
Microsserviços
Programação
description How microservices communicate is fundamental to the overall performance of a system. Therefore, there are various protocols and communication methods available in different programming languages. With this in mind, this work presents a testing model to identify performance behaviors among different communication methods applied to multiple languages. For this purpose, Elastic Stack observability resources are used to collect data and create visualizations of load tests generated with the K6 tool. To be subjected to the tests, three applications were developed in Go, JavaScript, and Python, implementing REST, gRPC, and GraphQL. The results show overall better performance in Go, superior performance of GraphQL for insertions, and similar behavior between GraphQL and REST, with a slight advantage for REST in handling large volumes of data.
publishDate 2024
dc.date.none.fl_str_mv 2024-12-04
2025-05-10T22:26:54Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv CHAVES, Lucas Martins. Comparativo de comunicação de microsserviços desenvolvidos em múltiplas linguagens de programação. 2024. 14 f. Artigo de Conclusão de Curso (Bacharel em Computação). Curso de Computação. Universidade de Passo Fundo, Passo Fundo, 2024.
https://repositorio.upf.br/handle/123456789/7501
identifier_str_mv CHAVES, Lucas Martins. Comparativo de comunicação de microsserviços desenvolvidos em múltiplas linguagens de programação. 2024. 14 f. Artigo de Conclusão de Curso (Bacharel em Computação). Curso de Computação. Universidade de Passo Fundo, Passo Fundo, 2024.
url https://repositorio.upf.br/handle/123456789/7501
dc.language.iso.fl_str_mv por
language por
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.publisher.none.fl_str_mv Universidade de Passo Fundo
Instituto de Ciências Exatas e Geociências - ICEG
Brasil
UPF
publisher.none.fl_str_mv Universidade de Passo Fundo
Instituto de Ciências Exatas e Geociências - ICEG
Brasil
UPF
dc.source.none.fl_str_mv reponame:Repositório Institucional da UPF
instname:Universidade de Passo Fundo (UPF)
instacron:UPF
instname_str Universidade de Passo Fundo (UPF)
instacron_str UPF
institution UPF
reponame_str Repositório Institucional da UPF
collection Repositório Institucional da UPF
repository.name.fl_str_mv Repositório Institucional da UPF - Universidade de Passo Fundo (UPF)
repository.mail.fl_str_mv jucelei@upf.br||biblio@upf.br
_version_ 1850429969474256896