Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos

Detalhes bibliográficos
Autor(a) principal: Marques, Pedro Henrique Linhas e
Data de Publicação: 2023
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/23519
Resumo: Uma arquitetura de microsserviços é composta por diferentes serviços independentes, que possuem as suas próprias camadas conseguindo comunicar entre si. Os mecanismos de comunicação síncrona utilizados neste tipo de arquitetura conduzem ao aumento da latência e ao risco da existência de timeouts. Sabendo-se da possível ocorrência de falhas mecanismos de controlo sobre o estado do sistema são recomendados. Complementarmente, a escalabilidade deve de estar presente consoante as necessidades. Este tipo de arquitetura combinada com abordagens orientadas a eventos pode-se revelar uma alternativa razoável quando se possui requisitos de desempenho, tolerância a falhas e escalabilidade. Uma visão geral do estado de arte das arquiteturas de microsserviços orientadas a eventos é realizada, com recurso a uma revisão sistemática da literatura. Aqui são exploradas as preocupações, desafios, topologias, tecnologias e métricas a considerar aquando da exploração da temática das arquiteturas de microsserviços orientadas a eventos. Após a recolha de informação, uma análise de valor sobre o valor deste projeto de tese é construída, com recurso ao processo de inovação New Concept Development (NCD). Alcançando-se a ideia mais relevante de explorar, apoiada pela aplicação do método Analytic Hierarchy Process (AHP), ou seja, o desenvolvimento de dois protótipos de microsserviços orientados a eventos arquitecturalmente distintos. O primeiro aplicando a topologia mediadora e o segundo aplicando o modelo ator. Escolhida a ideia mais relevante de se explorar é realizada a análise e a conceção da solução. Abordando-se o problema de negócio de estacionamento de veículos, bem como são construídos os processos de engenharia de requisitos e de análise funcional com recurso ao método Quality Function Deployment (QFD). Depois evidencia-se as alterações arquiteturais a realizar às aplicações típicas da empresa, para que estas contemplem as abordagens referentes à aplicação da topologia mediadora e do modelo ator. Posteriormente, a implementação dos protótipos correspondentes é realizada, começando-se pela definição das dependências principais de cada protótipo, depois os detalhes de implementação mais relevantes dos mesmos são expressos. O processo de implementação é concluído com a realização de testes, assegurando a qualidade dos protótipos alcançados. Ulteriormente, a avaliação dos protótipos desenvolvidos é suportada segundo certas métricas, alcançadas com base na abordagem Goal, Questions, Metrics (GQM), permitindo avaliar o desempenho, a escalabilidade, a disponibilidade e a monitorabilidade de cada protótipo. Os resultados atingidos permitiram comparar os diferentes protótipos, sendo o protótipo baseado na topologia mediadora aquele que melhor harmoniza desempenho, disponibilidade, monitorabilidade e escalabilidade. Por fim, as conclusões do trabalho de mestrado são expressas, onde se apresentam os resultados atingidos, as contribuições, ameaças e pontos de trabalho futuro.
id RCAP_670738a7d653732596ce19137ad1d64d
oai_identifier_str oai:recipp.ipp.pt:10400.22/23519
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 Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventosArquitetura de softwareMicrosserviçosOrientados a eventosSoftware ArchitectureMicroservicesEvent-drivenUma arquitetura de microsserviços é composta por diferentes serviços independentes, que possuem as suas próprias camadas conseguindo comunicar entre si. Os mecanismos de comunicação síncrona utilizados neste tipo de arquitetura conduzem ao aumento da latência e ao risco da existência de timeouts. Sabendo-se da possível ocorrência de falhas mecanismos de controlo sobre o estado do sistema são recomendados. Complementarmente, a escalabilidade deve de estar presente consoante as necessidades. Este tipo de arquitetura combinada com abordagens orientadas a eventos pode-se revelar uma alternativa razoável quando se possui requisitos de desempenho, tolerância a falhas e escalabilidade. Uma visão geral do estado de arte das arquiteturas de microsserviços orientadas a eventos é realizada, com recurso a uma revisão sistemática da literatura. Aqui são exploradas as preocupações, desafios, topologias, tecnologias e métricas a considerar aquando da exploração da temática das arquiteturas de microsserviços orientadas a eventos. Após a recolha de informação, uma análise de valor sobre o valor deste projeto de tese é construída, com recurso ao processo de inovação New Concept Development (NCD). Alcançando-se a ideia mais relevante de explorar, apoiada pela aplicação do método Analytic Hierarchy Process (AHP), ou seja, o desenvolvimento de dois protótipos de microsserviços orientados a eventos arquitecturalmente distintos. O primeiro aplicando a topologia mediadora e o segundo aplicando o modelo ator. Escolhida a ideia mais relevante de se explorar é realizada a análise e a conceção da solução. Abordando-se o problema de negócio de estacionamento de veículos, bem como são construídos os processos de engenharia de requisitos e de análise funcional com recurso ao método Quality Function Deployment (QFD). Depois evidencia-se as alterações arquiteturais a realizar às aplicações típicas da empresa, para que estas contemplem as abordagens referentes à aplicação da topologia mediadora e do modelo ator. Posteriormente, a implementação dos protótipos correspondentes é realizada, começando-se pela definição das dependências principais de cada protótipo, depois os detalhes de implementação mais relevantes dos mesmos são expressos. O processo de implementação é concluído com a realização de testes, assegurando a qualidade dos protótipos alcançados. Ulteriormente, a avaliação dos protótipos desenvolvidos é suportada segundo certas métricas, alcançadas com base na abordagem Goal, Questions, Metrics (GQM), permitindo avaliar o desempenho, a escalabilidade, a disponibilidade e a monitorabilidade de cada protótipo. Os resultados atingidos permitiram comparar os diferentes protótipos, sendo o protótipo baseado na topologia mediadora aquele que melhor harmoniza desempenho, disponibilidade, monitorabilidade e escalabilidade. Por fim, as conclusões do trabalho de mestrado são expressas, onde se apresentam os resultados atingidos, as contribuições, ameaças e pontos de trabalho futuro.A microservices architecture is composed of different independent services, which have their own layers and can communicate with each other. The synchronous communication mechanisms used in this type of architecture lead to increased latency and the risk of timeouts. Knowing the possible occurrence of failures, control mechanisms over the state of the system are recommended. In addition, scalability must be present depending on the needs. This type of architecture combined with event-driven approaches can prove to be a reasonable alternative when performance, fault tolerance and scalability requirements are met. An overview of the state of the art of event-driven microservices architectures is performed, using a systematic literature review. Here, the concerns, challenges, topologies, technologies and metrics to consider when exploring the topic of event-driven microservices architectures are explored. After collecting information, a value analysis on the value of this thesis project is built, using the New Concept Development (NCD) innovation process. Reaching the most relevant idea to explore, supported by the application of the Analytic Hierarchy Process (AHP) method, that is, the development of two different prototypes using event-driven microservices. The first applying the mediator topology and the second applying the actor model. Having chosen the most relevant idea to be explored, the analysis and design of the solution is carried out. Addressing the business problem of parking vehicles, requirements engineering and functional analysis processes are built using the Quality Function Deployment (QFD) method. Afterwards, the architectural changes to be made to the company’s typical applications are highlighted, so that they include the approaches related to the application of the mediator topology and the actor model. Subsequently, the implementation of the corresponding prototypes is carried out, starting with the definition of the main dependencies of each prototype, then the most relevant implementation details of each prototype are expressed. The implementation process concludes with testing, ensuring the quality of the prototypes achieved. Next, the evaluation of the developed prototypes is supported according to certain metrics, achieved based on the Goal, Questions, Metrics (GQM) approach, allowing to evaluate the performance, scalability, availability and monitorability of each prototype. The achieved results allowed comparing the different prototypes, being the protype based on mediator topology the one that best harmonizes performance, availability, monitorability and scalability. Finally, the conclusions of the master’s work are expressed, where the results achieved, contributions, threats and points for future work are presented.Azevedo, Isabel de Fátima SilvaRepositório Científico do Instituto Politécnico do PortoMarques, Pedro Henrique Linhas e2023-09-12T15:07:44Z20232023-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/23519TID:203352645porinfo: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-09-20T01:46:01Zoai:recipp.ipp.pt:10400.22/23519Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T20:29:05.814855Repositó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 Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
title Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
spellingShingle Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
Marques, Pedro Henrique Linhas e
Arquitetura de software
Microsserviços
Orientados a eventos
Software Architecture
Microservices
Event-driven
title_short Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
title_full Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
title_fullStr Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
title_full_unstemmed Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
title_sort Harmonização de desempenho, tolerância a falhas e escalabilidade em arquiteturas de microsserviços orientadas a eventos
author Marques, Pedro Henrique Linhas e
author_facet Marques, Pedro Henrique Linhas e
author_role author
dc.contributor.none.fl_str_mv Azevedo, Isabel de Fátima Silva
Repositório Científico do Instituto Politécnico do Porto
dc.contributor.author.fl_str_mv Marques, Pedro Henrique Linhas e
dc.subject.por.fl_str_mv Arquitetura de software
Microsserviços
Orientados a eventos
Software Architecture
Microservices
Event-driven
topic Arquitetura de software
Microsserviços
Orientados a eventos
Software Architecture
Microservices
Event-driven
description Uma arquitetura de microsserviços é composta por diferentes serviços independentes, que possuem as suas próprias camadas conseguindo comunicar entre si. Os mecanismos de comunicação síncrona utilizados neste tipo de arquitetura conduzem ao aumento da latência e ao risco da existência de timeouts. Sabendo-se da possível ocorrência de falhas mecanismos de controlo sobre o estado do sistema são recomendados. Complementarmente, a escalabilidade deve de estar presente consoante as necessidades. Este tipo de arquitetura combinada com abordagens orientadas a eventos pode-se revelar uma alternativa razoável quando se possui requisitos de desempenho, tolerância a falhas e escalabilidade. Uma visão geral do estado de arte das arquiteturas de microsserviços orientadas a eventos é realizada, com recurso a uma revisão sistemática da literatura. Aqui são exploradas as preocupações, desafios, topologias, tecnologias e métricas a considerar aquando da exploração da temática das arquiteturas de microsserviços orientadas a eventos. Após a recolha de informação, uma análise de valor sobre o valor deste projeto de tese é construída, com recurso ao processo de inovação New Concept Development (NCD). Alcançando-se a ideia mais relevante de explorar, apoiada pela aplicação do método Analytic Hierarchy Process (AHP), ou seja, o desenvolvimento de dois protótipos de microsserviços orientados a eventos arquitecturalmente distintos. O primeiro aplicando a topologia mediadora e o segundo aplicando o modelo ator. Escolhida a ideia mais relevante de se explorar é realizada a análise e a conceção da solução. Abordando-se o problema de negócio de estacionamento de veículos, bem como são construídos os processos de engenharia de requisitos e de análise funcional com recurso ao método Quality Function Deployment (QFD). Depois evidencia-se as alterações arquiteturais a realizar às aplicações típicas da empresa, para que estas contemplem as abordagens referentes à aplicação da topologia mediadora e do modelo ator. Posteriormente, a implementação dos protótipos correspondentes é realizada, começando-se pela definição das dependências principais de cada protótipo, depois os detalhes de implementação mais relevantes dos mesmos são expressos. O processo de implementação é concluído com a realização de testes, assegurando a qualidade dos protótipos alcançados. Ulteriormente, a avaliação dos protótipos desenvolvidos é suportada segundo certas métricas, alcançadas com base na abordagem Goal, Questions, Metrics (GQM), permitindo avaliar o desempenho, a escalabilidade, a disponibilidade e a monitorabilidade de cada protótipo. Os resultados atingidos permitiram comparar os diferentes protótipos, sendo o protótipo baseado na topologia mediadora aquele que melhor harmoniza desempenho, disponibilidade, monitorabilidade e escalabilidade. Por fim, as conclusões do trabalho de mestrado são expressas, onde se apresentam os resultados atingidos, as contribuições, ameaças e pontos de trabalho futuro.
publishDate 2023
dc.date.none.fl_str_mv 2023-09-12T15:07:44Z
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/23519
TID:203352645
url http://hdl.handle.net/10400.22/23519
identifier_str_mv TID:203352645
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_ 1799133558548201472