Arquitectura dirigida por eventos: un enfoque innovador en el mundo financiero
La arquitectura dirigida por eventos se consolidó como un pilar fundamental en el desarrollo de soluciones tecnológicas, especialmente en sectores donde la inmediatez y la reactividad ante ciertos estímulos o, mejor dicho, eventos, es un requisito indispensable.
En este marco, Argentina no se queda atrás y ha comenzado a implementar esta arquitectura en diversos sectores, siendo uno de ellos el financiero, donde las transacciones y la gestión de datos en tiempo real son cruciales.
La arquitectura dirigida por eventos no solo es una tendencia global, sino que también encontró un terreno fértil en Argentina, donde los desarrolladores y las empresas tecnológicas buscan constantemente optimizar los procesos, mejorar la experiencia del usuario y, por supuesto, asegurar la eficiencia en la gestión de los datos y las transacciones.
¿Qué es la arquitectura dirigida por eventos y cómo funciona?
La arquitectura dirigida por eventos, o EDA por sus siglas en inglés (Event-Driven Architecture), es un modelo de diseño que permite a las aplicaciones responder de manera eficiente y efectiva a la recepción de información proveniente de eventos.
Un evento, en este contexto, se refiere a un cambio de estado significativo dentro del sistema o en su entorno, el cuál es de gran interés para algún observador. En otras palabras, algo que ocurre en un punto específico del tiempo y que es digno de ser notificado.
En un sistema que opera bajo EDA, los componentes del software, a menudo denominados servicios o módulos, producen y/o consumen eventos. Un componente, al detectar un cambio de estado o un evento, genera un mensaje que es enviado a través de un mediador, comúnmente conocido como «bus de eventos» o «broker», y es recibido por otros componentes interesados en dicho evento. Estos componentes receptores, a su vez, procesan el evento y pueden generar nuevos como resultado de su procesamiento.
La EDA se distingue por su naturaleza asincrónica y desacoplada. Los componentes que emiten eventos no necesitan saber qué otros componentes están escuchando y actuando en respuesta a esos eventos.
De igual manera, los componentes que responden a los eventos no necesitan saber quién los generó. Este desacoplamiento permite una mayor flexibilidad y escalabilidad en los sistemas, ya que los componentes pueden ser modificados, agregados o eliminados sin afectar al resto del sistema.

Fuente: Unsplash
En el contexto de los servicios financieros, por ejemplo, un evento podría ser una transacción realizada por un cliente. La EDA se encargaría de gestionar las acciones que deben ejecutarse tras esa transacción, como actualizar saldos, enviar notificaciones, o generar recibos, todo ello de manera asincrónica y en tiempo real, garantizando así una experiencia de usuario fluida y una operativa interna eficiente.
La EDA se ha convertido en una estrategia arquitectónica fundamental para las organizaciones que buscan adaptabilidad, escalabilidad y una gestión eficiente de la información en tiempo real, siendo especialmente relevante en sectores como el financiero, donde la capacidad de responder rápidamente a los eventos es crucial para mantener la integridad y la confiabilidad del sistema.
La implementación de EDA en Argentina
En Argentina, la implementación de la arquitectura dirigida por eventos ha permitido optimizar la interacción entre los componentes desplegados y la forma en que persiste la información en sistemas financieros.
La elección de una estrategia de comunicación entre sistemas, como la EDA, se realiza con el objetivo de resolver problemas específicos del negocio, como la actualización en tiempo real de marcadores y posiciones en juegos en línea o la gestión de transacciones financieras.
Un sistema diseñado para ser reactivo, gracias a la EDA, se ejecutará independientemente del tiempo de ejecución de quien haya desencadenado el evento, permitiendo que el sistema que haya desencadenado el evento continúe su funcionamiento sin esperar por el resultado de la ejecución del sistema que corre en otro plano.
Desafíos y consideraciones
A pesar de los beneficios que ofrece la arquitectura event driven, su implementación no está exenta de desafíos. La complejidad de una arquitectura dirigida por eventos puede ser elevada y, en muchos casos, los conceptos pueden ser malinterpretados, resultando en un sistema que, lejos de cubrir los atributos de calidad por los cuales se opta por eventos, los ofusca.

Fuente: Unsplash
En este sentido, es crucial explorar estas complejidades y proponer una serie de pasos y recomendaciones para abordarlos, entendiendo que pueden no existir soluciones óptimas para cada escenario. La arquitectura dirigida por eventos debe realizarse de manera cuidadosa y considerada, siempre con el objetivo de mejorar la eficiencia y la reactividad del sistema ante los eventos que se generan.
