Avaliação da Framework gRPC
Autor(a) principal: | |
---|---|
Data de Publicação: | 2022 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10400.22/20874 |
Resumo: | A arquitetura e construção de software pode ser descrita como um processo evolutivo que, através de constantes iterações, conduz ao desenvolvimento de melhores tecnologias, abordagens, processos, entre outros. Esta evolução nasce devido à necessidade de mudança – necessidade esta que pode surgir devido a novas tecnologias, métodos, objetivos ou outra qualquer alteração no ambiente. A arquitetura baseada em microsserviços pode ser vista como um dos resultados deste processo evolutivo – trata-se de uma abordagem à construção de aplicações complexas, onde a aplicação é dividida num conjunto de elementos de menor tamanho, autónomos, e que comunicam entre si. Embora a adoção desta abordagem traga consigo uma série de vantagens que lhe são associadas, – agilidade de desenvolvimento, eficiência de recursos e manutenibilidade, para nomear algumas – a comunicação entre os vários serviços continua a mostrar-se relativamente desafiante. gRPC, desenvolvido pela Google em 2015, é uma framework RPC que pode servir de alternativa a outras abordagens à comunicação entre microsserviços (como é o caso do estilo REST) que constituem uma aplicação, e que foi introduzida com o objetivo de promover o desenvolvimento de soluções baseadas em microsserviços e simplificar a troca de mensagens entre sistemas. Dada a juventude desta framework existe alguma dificuldade em compreender as ideias por trás da mesma e como esta pode ser adotada. Este documento apresenta os conceitos que compõe esta framework e descreve, resumidamente, a abordagem REST – a principal abordagem ao desenvolvimento de comunicação (síncrona) entre microsserviços. Para além disso, é também proposto e apresentado o desenvolvimento de aplicações protótipo com o objetivo estudar a adoção destas abordagens. O documento termina com uma avaliação ao desempenho dos protótipos desenvolvidos e com uma conclusão que tem como objetivo ajudar a perceber como gRPC se compara com a adoção de REST quando aplicada a diversos cenários de comunicação entre microsserviços. |
id |
RCAP_c0728955791dc10e4308642a7d700ef0 |
---|---|
oai_identifier_str |
oai:recipp.ipp.pt:10400.22/20874 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Avaliação da Framework gRPCgRPCRESTMicrosserviçosComunicaçãoMicroservicesCommunicationA arquitetura e construção de software pode ser descrita como um processo evolutivo que, através de constantes iterações, conduz ao desenvolvimento de melhores tecnologias, abordagens, processos, entre outros. Esta evolução nasce devido à necessidade de mudança – necessidade esta que pode surgir devido a novas tecnologias, métodos, objetivos ou outra qualquer alteração no ambiente. A arquitetura baseada em microsserviços pode ser vista como um dos resultados deste processo evolutivo – trata-se de uma abordagem à construção de aplicações complexas, onde a aplicação é dividida num conjunto de elementos de menor tamanho, autónomos, e que comunicam entre si. Embora a adoção desta abordagem traga consigo uma série de vantagens que lhe são associadas, – agilidade de desenvolvimento, eficiência de recursos e manutenibilidade, para nomear algumas – a comunicação entre os vários serviços continua a mostrar-se relativamente desafiante. gRPC, desenvolvido pela Google em 2015, é uma framework RPC que pode servir de alternativa a outras abordagens à comunicação entre microsserviços (como é o caso do estilo REST) que constituem uma aplicação, e que foi introduzida com o objetivo de promover o desenvolvimento de soluções baseadas em microsserviços e simplificar a troca de mensagens entre sistemas. Dada a juventude desta framework existe alguma dificuldade em compreender as ideias por trás da mesma e como esta pode ser adotada. Este documento apresenta os conceitos que compõe esta framework e descreve, resumidamente, a abordagem REST – a principal abordagem ao desenvolvimento de comunicação (síncrona) entre microsserviços. Para além disso, é também proposto e apresentado o desenvolvimento de aplicações protótipo com o objetivo estudar a adoção destas abordagens. O documento termina com uma avaliação ao desempenho dos protótipos desenvolvidos e com uma conclusão que tem como objetivo ajudar a perceber como gRPC se compara com a adoção de REST quando aplicada a diversos cenários de comunicação entre microsserviços.Software architecture and construction can be described as an evolutionary process that, through constant iterations, leads to the development of better technologies, approaches, processes, among others. This evolution arises due to the need for change - a need that can arise due to new technologies, methods, goals, or any other change in the environment. The microservices-based architecture can be seen as one of the results of this evolutionary process - it's an approach to building complex applications, where the application is divided into a set of smaller elements, that are autonomous, and that communicate with each other. While adopting this approach brings with it several advantages associated with it - development agility, resource efficiency, and maintainability, to name a few - communication between the various services still proves to be relatively challenging. gRPC, developed by Google in 2015, is an RPC framework that can serve as an alternative to implementing communication between microservices that constitute an application, and that was introduced with the goal of promoting the development of microservices-based solutions and simplifying the exchange of messages between systems. Given the youth of this framework there is some difficulty in understanding the ideas behind it and how it can be adopted. This paper presents the concepts that make up this framework, and briefly describes the REST approach - the main approach to the development of (synchronous) communication between microservices. In addition, the development of prototype applications is also proposed and presented in order to study the adoption of these approaches. The document ends with an evaluation of the performance of the prototypes developed and with a conclusion that aims to help understand how gRPC compares to the adoption of REST when applied to several scenarios of communication between microservices.Bragança, Alexandre Manuel TavaresRepositório Científico do Instituto Politécnico do PortoRodrigues , José António Moreira2022-09-13T10:57:00Z20222022-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/20874TID:203058763porinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-03-13T13:16:25Zoai:recipp.ipp.pt:10400.22/20874Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T17:40:57.790780Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Avaliação da Framework gRPC |
title |
Avaliação da Framework gRPC |
spellingShingle |
Avaliação da Framework gRPC Rodrigues , José António Moreira gRPC REST Microsserviços Comunicação Microservices Communication |
title_short |
Avaliação da Framework gRPC |
title_full |
Avaliação da Framework gRPC |
title_fullStr |
Avaliação da Framework gRPC |
title_full_unstemmed |
Avaliação da Framework gRPC |
title_sort |
Avaliação da Framework gRPC |
author |
Rodrigues , José António Moreira |
author_facet |
Rodrigues , José António Moreira |
author_role |
author |
dc.contributor.none.fl_str_mv |
Bragança, Alexandre Manuel Tavares Repositório Científico do Instituto Politécnico do Porto |
dc.contributor.author.fl_str_mv |
Rodrigues , José António Moreira |
dc.subject.por.fl_str_mv |
gRPC REST Microsserviços Comunicação Microservices Communication |
topic |
gRPC REST Microsserviços Comunicação Microservices Communication |
description |
A arquitetura e construção de software pode ser descrita como um processo evolutivo que, através de constantes iterações, conduz ao desenvolvimento de melhores tecnologias, abordagens, processos, entre outros. Esta evolução nasce devido à necessidade de mudança – necessidade esta que pode surgir devido a novas tecnologias, métodos, objetivos ou outra qualquer alteração no ambiente. A arquitetura baseada em microsserviços pode ser vista como um dos resultados deste processo evolutivo – trata-se de uma abordagem à construção de aplicações complexas, onde a aplicação é dividida num conjunto de elementos de menor tamanho, autónomos, e que comunicam entre si. Embora a adoção desta abordagem traga consigo uma série de vantagens que lhe são associadas, – agilidade de desenvolvimento, eficiência de recursos e manutenibilidade, para nomear algumas – a comunicação entre os vários serviços continua a mostrar-se relativamente desafiante. gRPC, desenvolvido pela Google em 2015, é uma framework RPC que pode servir de alternativa a outras abordagens à comunicação entre microsserviços (como é o caso do estilo REST) que constituem uma aplicação, e que foi introduzida com o objetivo de promover o desenvolvimento de soluções baseadas em microsserviços e simplificar a troca de mensagens entre sistemas. Dada a juventude desta framework existe alguma dificuldade em compreender as ideias por trás da mesma e como esta pode ser adotada. Este documento apresenta os conceitos que compõe esta framework e descreve, resumidamente, a abordagem REST – a principal abordagem ao desenvolvimento de comunicação (síncrona) entre microsserviços. Para além disso, é também proposto e apresentado o desenvolvimento de aplicações protótipo com o objetivo estudar a adoção destas abordagens. O documento termina com uma avaliação ao desempenho dos protótipos desenvolvidos e com uma conclusão que tem como objetivo ajudar a perceber como gRPC se compara com a adoção de REST quando aplicada a diversos cenários de comunicação entre microsserviços. |
publishDate |
2022 |
dc.date.none.fl_str_mv |
2022-09-13T10:57:00Z 2022 2022-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/20874 TID:203058763 |
url |
http://hdl.handle.net/10400.22/20874 |
identifier_str_mv |
TID:203058763 |
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.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799131497337192448 |