Identificación del impacto de la observación y el monitoreo sobre sistemas reactivos en ambientes distribuidos
Fecha
Autores
Autor corporativo
Título de la revista
ISSN de la revista
Título del volumen
Editor
Compartir
Director
Daza Corredor, Alejandro Paolo
Altmetric
Resumen
This document provides an alternative for observability and monitoring on distributed systems using free software tools, presenting an observability visualisation platform. In addition to identifying best practices when monitoring reactive applications in scalable distributed systems. Also, exploring the different reactive frameworks available within free software that make use of the Java virtual machine. Showing how some free frameworks that use asynchronous programming in the Java virtual machine are accessible and efficient tools to write scalable cloud-focused applications asynchronously. And finally, build a reactive observable prototype with its respective load client. T he fast grow of internet companies, and subsequent cloud by-products such as Amazon AWS or Google Cloud, combined with infrastructure-focused tools such as Containers and Kubernetes, have opened a new era of distributed systems operating in hundreds of nodes around multiple hubs. Architectures focused on microservices currently have increasing the complexity of these systems exponentially, although they allow systems to respond in an acceptable time, scale vertically and horizontally allowing data flows asynchronously is making more difficult to monitor the current status of such systems. Asynchronous programming is key to maximising the use of these new hardware resources, allowing to deal with more concurrent connections than with traditional I/O blocking paradigms. Services must cater for workloads that can change dramatically from hour to hour, therefore we must design code that naturally supports horizontal scalability. But this only increases the complexity of the applications, something for which reactive microservices monitoring was not designed initially. The monitoring of reactive microservices can be carried out by making combined use of the classic event logging and distributed tracing in the environments where these systems are deployed.