En pocas palabras: Midaz ejecuta el servicio Ledger modular y un servicio Tracer independiente. Despliega y escala cada servicio y su infraestructura de soporte según tu entorno. Para una visión general orientada al negocio, consulta Sobre Midaz.
Arquitectura modular
El diagrama a continuación (Figura 1) muestra cómo encajan las piezas.
Figura 1. Macro-arquitectura de Midaz
1. Capa de Cluster (gestión del cliente)
El cliente gestiona esta capa. Proporciona la base de Kubernetes que ejecuta Midaz. Habilita estos servicios para un despliegue fluido y seguro:- Service (Servicio): Abstracción de redes para exponer y enrutar servicios.
- AutoScaler (Autoescalador): Ajusta automáticamente el número de pods.
- HPA (Horizontal Pod Autoscaler): Escala aplicaciones basándose en métricas.
- Secrets (Secretos): Gestión segura de datos sensibles.
- ConfigMap: Gestión de configuración externalizada.
2. Capa de Front-end
La capa de front-end proporciona la interfaz de usuario para la interacción con el sistema (panel de administración, dashboards, y más).Transición importante: las versiones más recientes de Midaz ya no incluyen una consola integrada en el repositorio. Lerian Console ahora proporciona la interfaz visual. Es una plataforma unificada que incluye Midaz como un módulo de producto.Si usas una versión anterior de Midaz, puede que aún tengas la Midaz Console independiente. Este componente ahora está en modo de mantenimiento. Solo recibe parches de seguridad críticos. Migra a Lerian Console para obtener las últimas funcionalidades y mejoras.
3. Capa de Back-end
El back-end de Ledger es un monolito modular que concentra las responsabilidades principales del ledger de Midaz. Midaz también ejecuta Tracer como un servicio independiente. Ledger reúne cuatro componentes principales:- Dominio de Onboarding: gestiona organizaciones, ledgers, activos, portfolios, segmentos y cuentas.
- Dominio de Transacciones: maneja las transacciones financieras, las operaciones y los movimientos de activos.
- CRM: está integrado en el proceso de Ledger.
- Fees: está integrado en el proceso de Ledger.
4. Capa de Datos
Esta capa contiene las bases de datos y los componentes de infraestructura que dan soporte a los datos de las aplicaciones y a los flujos de eventos:- PostgreSQL: bases de datos separadas
onboardingytransaction, cada una configurada con conexiones primarias y de réplica. - Valkey: Un almacén de clave-valor compatible con Redis para caching o recuperación rápida de datos.
- MongoDB: Almacena datos no estructurados y semiestructurados, como metadatos de entidades.
- RabbitMQ: Agente de mensajes (Message broker) para la comunicación asíncrona entre servicios.
- Redpanda: broker compatible con Kafka para los flujos de eventos de Ledger. Ledger publica eventos configurados en él solo cuando
STREAMING_ENABLED=truey hay brokers de streaming configurados.
5. Capa de Helm Chart
Midaz usa Helm Charts (específicamentelerianstudio/helm) para desplegar y configurar la infraestructura.
El chart conecta el código con Kubernetes. Despliega cada componente de la misma manera en todos los entornos.
Cómo trabajan juntas las capas
Cada capa tiene un rol específico, sin complejidad innecesaria. El sistema escala y se adapta a medida que cambian tus necesidades.
- Kubernetes coordina cómo se comunican las capas, para interacciones seguras y fiables en todo el sistema.
- Helm mantiene sincronizados los despliegues y las configuraciones, de modo que el escalado y las actualizaciones se mantienen sencillos.

