| Name: | Description: | Size: | Format: | |
|---|---|---|---|---|
| 2.32 MB | Adobe PDF |
Authors
Advisor(s)
Abstract(s)
Os microserviços são um estilo de arquitetura de software que consiste num conjunto de serviços independentes que comunicam entre si através de APIs. Na sua implementação identificam-se várias vantagens como flexibilidade, manutenção e independência. No entanto, também se apresentam vários desafios, uma vez que se pode tornar numa arquitetura muito complexa, e pode dificultar a monitorização e manutenção de sistemas. A comunicação é outro dos grandes desafios apresentados, uma vez que é necessário garantir que as API’s são compatíveis entre si. A monitorização dos microserviços ajuda a identificar, analisar e resolver problemas nos microserviços de um modo mais célere, por forma a minimizar qualquer impacto nos seus utilizadores. A monitorização é feita através de métricas, tais como tempo de resposta, taxa de erros, uso de recursos e consumo de rede. A monitorização realiza-se com apoio de ferramentas e plataformas que ajudam a recolher e analisar os dados dos microserviços. Com a implementação destas métricas, ferramentas e plataformas é possivel a deteção de problemas atempadamente que evitam problemas de desempenho, disponibilidade e confiabilidade, e evita, ou reduz, interrupções nos serviços. A monitorização também pode ajudar a identificar oportunidades de melhoria, otimizando o código, ajustando a configuração ou atualizando os recursos. Para além de que a monitorização pode ajudar a identificar e corrigir problemas que podem causar falhas, o que ajuda a reduzir o tempo de inatividade e assim aumentar a satisfação do cliente. Com uma monitorização adequada são fornecidos dados importantes para tomada de decisão, onde podem ser identificadas tendências, otimizar recursos e ou desenvolver novos produtos e serviços. Este trabalho faz um enquadramento teórico dos microserviços, e de como é feita a sua monitorização, recorrendo à literatura e apresenta um estudo de caso que explora a monitorização dos microserviços na empresa portuguesa Hovione.
Microservices are a software architecture style that consists of a collection of independent services that communicate with each other through APIs. Several advantages have been identified in their implementation, such as flexibility, maintainability, and independence. However, several challenges are also presented, since it can become a very complex architecture, and can make it difficult to monitor and maintain systems. Communication is another major challenge, since it is necessary to ensure that the APIs are compatible with each other. Microservice monitoring helps to identify, analyze, and resolve problems in microservices more quickly, in order to minimize any impact on their users. Monitoring is done through metrics, such as response time, error rate, resource usage, and network consumption. Monitoring is carried out with the support of tools and platforms that help collect and analyse microservice data. With the implementation of these metrics, tools, and platforms, it is possible to detect problems early on that avoid performance, availability, and reliability problems, and avoid, or reduce, service interruptions. Monitoring can also help identify opportunities for improvement, by optimizing code, adjusting configuration, or updating resources. In addition, monitoring can help identify and correct problems that can cause failures, which helps to reduce downtime and thus increase customer satisfaction. With proper monitoring, important data is provided for decision-making, where trends can be identified, resources can be optimized, or new products and services can be developed. This work provides a theoretical framework for microservices, and how they are monitored, using literature and presents a case study that explores the monitoring of microservices at the Portuguese company Hovione.
Microservices are a software architecture style that consists of a collection of independent services that communicate with each other through APIs. Several advantages have been identified in their implementation, such as flexibility, maintainability, and independence. However, several challenges are also presented, since it can become a very complex architecture, and can make it difficult to monitor and maintain systems. Communication is another major challenge, since it is necessary to ensure that the APIs are compatible with each other. Microservice monitoring helps to identify, analyze, and resolve problems in microservices more quickly, in order to minimize any impact on their users. Monitoring is done through metrics, such as response time, error rate, resource usage, and network consumption. Monitoring is carried out with the support of tools and platforms that help collect and analyse microservice data. With the implementation of these metrics, tools, and platforms, it is possible to detect problems early on that avoid performance, availability, and reliability problems, and avoid, or reduce, service interruptions. Monitoring can also help identify opportunities for improvement, by optimizing code, adjusting configuration, or updating resources. In addition, monitoring can help identify and correct problems that can cause failures, which helps to reduce downtime and thus increase customer satisfaction. With proper monitoring, important data is provided for decision-making, where trends can be identified, resources can be optimized, or new products and services can be developed. This work provides a theoretical framework for microservices, and how they are monitored, using literature and presents a case study that explores the monitoring of microservices at the Portuguese company Hovione.
Description
Keywords
Monitorização de microserviços Análise de microserviços Arquitetura de microserviços Monitoring microservices Analysis microservices Microservices architecture
