Diferencia entre APM y Observabilidad

Seguramente has escuchado hablar sobre el monitoreo del rendimiento de aplicaciones, o APM. Y es posible que también hayas oído hablar de la observabilidad. Y es posible que hayas escuchado que la observabilidad es una evolución de APM. Sin embargo, la observabilidad no es simplemente un nuevo nombre para APM ni tampoco una evolución de APM. La razón es que APM se centra en la depuración de aplicaciones, mientras que la observabilidad se enfoca en comprender las aplicaciones. Permíteme explicarlo.

Ejemplo de la vida real

Imaginemos una aplicación, la llamaremos A. A interactúa con un par de sistemas backend, con la base de datos, con el sistema de mensajería y con el sistema de transacciones. A tiene un agente de APM que se encuentra en su código y monitorea no solo lo que sucede en A, sino también los tiempos de respuesta de todas las llamadas a los sistemas backend que realiza A.

Ahora vamos a introducir una segunda aplicación, mágicamente la llamaremos aplicación B. La aplicación B también interactúa con la misma base de datos que A. En algún momento, se lanza una nueva versión de B y en lugar de hacer 10 solicitudes a la base de datos por segundo, comienza a realizar 10 millones de llamadas a la base de datos por segundo. Esto no va a colapsar la base de datos, pero dificultará que la base de datos atienda todas las solicitudes al mismo tiempo. Por lo tanto, ahora llamaremos a B una aplicación «problemática» porque se está comportando mal. En realidad, B está causando problemas para los usuarios de A, ya que están experimentando retrasos en sus solicitudes a través de la aplicación A. Sin embargo, el código de APM en A no sabe nada acerca de B. Todo lo que sabe es que tiene tiempos de respuesta a los tres sistemas. En realidad, en esta situación, APM va a recibir buenos tiempos de respuesta del servidor de la base de datos. Simplemente está tomando mucho tiempo para que los datos se pongan al día y lleguen al usuario final.

Artículos relacionados  La importancia de estudiar Python, Linux y CCNA juntos

Para comprender realmente lo que está sucediendo aquí, necesitas tener contexto y comprensión del sistema completo. Y eso es lo que proporciona la observabilidad. En lugar de tener un agente en el código de A, la observabilidad coloca un sensor en todos los lugares necesarios, en todos los sistemas de todo el entorno. Al cambiar el enfoque de A al código de la base de datos, podrás ver que la base de datos está siendo mal administrada por las llamadas de B. Ahora puedes identificar el problema y hacer una reversión en el código de B. De esta manera, resuelves los problemas de los usuarios de A al revertir el código de B. Y eso es lo que realmente te brinda la observabilidad: esta idea de contexto en todo el sistema. Y esa es la ventaja de comprender.

Más allá de dos aplicaciones

Pero espera, hay más. A medida que te adentras en arquitecturas de microservicios distribuidos y tratas con docenas, cientos o incluso miles de servicios interconectados de diferentes maneras, la única forma de comprender lo que está sucediendo en todos ellos es tener un sensor de observabilidad en todos los lugares necesarios. A medida que te alejas de las aplicaciones monolíticas hacia arquitecturas de microservicios, asumes la responsabilidad de todas las piezas de tu código, pero también de comprender cómo funcionan todas juntas. También es importante comprender cómo tu código se relaciona con el código de los demás y con todos los demás sistemas que forman parte del entorno de la aplicación. Esto permite ofrecer un alto rendimiento en las aplicaciones y es por eso que necesitas la observabilidad.

Artículos relacionados  El futuro de la navegación: El poder de la IA y la automatización en el Mayflower Ship

Gracias por leer. Espero que hayas encontrado esta información útil. Asegúrate de consultar nuestros artículos relacionados para obtener más detalles sobre la observabilidad y cómo puede beneficiar a tu empresa.

ConceptoExplicación
APMMonitoreo del rendimiento de aplicaciones
ObservabilidadComprensión completa de las aplicaciones y sistemas
ContextoComprender el sistema completo, no solo partes aisladas
MicroserviciosArquitecturas más distribuidas con múltiples servicios

Preguntas frecuentes (FAQs)

¿Qué es APM?

APM significa Monitoreo del Rendimiento de Aplicaciones. Es una forma de analizar y solucionar problemas relacionados con el rendimiento de una aplicación.

¿Cuál es la diferencia entre APM y observabilidad?

APM se enfoca en la depuración de aplicaciones, mientras que la observabilidad busca comprender el funcionamiento de las aplicaciones en su contexto completo.

¿Por qué es importante la observabilidad en arquitecturas de microservicios?

En arquitecturas de microservicios, hay muchos servicios interconectados que interactúan entre sí de diferentes formas. La observabilidad proporciona una visión completa de todo el sistema para entender cómo funciona y detectar posibles problemas.

¿Cómo se logra la observabilidad?

La observabilidad se logra colocando sensores en todos los lugares necesarios en el sistema para recopilar datos e información que permita comprender el rendimiento y el funcionamiento de las aplicaciones y sistemas.

Espero que estas preguntas frecuentes te hayan ayudado a aclarar más sobre el tema de la observabilidad. Recuerda estar atento a nuestros próximos artículos relacionados para seguir aprendiendo sobre ciberseguridad y temas afines. ¡Hasta la próxima!

¿Te ha resultado útil??

0 / 0

Deja una respuesta 0

Your email address will not be published. Required fields are marked *