</>inexpresivo
Systems Lab
Intermedioaws18 min

Microservicios bancarios en AWS

Arquitectura de microservicios bancarios con swim lanes y contenedores AWS. App móvil → BFF/Adapter → Balance y Transfer services dentro de una VPC en una cuenta AWS dedicada.

AWSMicroservicesECSFargateRDSRedisVPCBFFAPIGatewayBanking

Ejemplo de arquitectura multi-capa con swim lanes (Cliente, API/Adaptadores) y contenedores de infraestructura (AWS Account, VPC, Service Groups). Muestra el patrón BFF para adaptar las necesidades de una app móvil a los microservicios internos, con caché Redis y base de datos PostgreSQL.

Componentes

App Móvil

App bancaria móvil (iOS/Android)

API Gateway

AWS API Gateway — punto de entrada con auth y rate limiting

BFF / Adapter

Backend-for-Frontend — orquesta llamadas a los microservicios

Balance Service

ECS Fargate — consulta de balance e historial

Transfer Service

ECS Fargate — procesamiento de transferencias

RDS PostgreSQL

RDS PostgreSQL Multi-AZ — fuente de verdad transaccional

ElastiCache Redis

ElastiCache Redis — caché de saldos para baja latencia

Conceptos relacionados

Backend-for-Frontend (BFF) patternSwim lanes para organización visual por capasContenedores AWS Account / VPC para límites de redCache-aside pattern con RedisCache invalidation after writeACID transactions con SERIALIZABLE isolationIdempotency keys para operaciones monetariasECS Fargate como runtime de microserviciosRDS Proxy para connection poolingAPI Gateway como capa de entrada con autenticación

Componentes de Microservicios bancarios en AWS

  • App Móvil: Aplicación móvil nativa que permite al usuario consultar su balance, realizar transferencias y gestionar su cuenta.Punto de entrada del usuario al sistema bancario. Consume la API del BFF para todas las operaciones.
  • API Gateway: Amazon API Gateway gestiona todas las solicitudes entrantes. Valida JWT, aplica rate limiting y enruta al BFF Adapter.Puerta de entrada al sistema. Protege los servicios internos del tráfico no autenticado y de ataques de volumen.
  • BFF / Adapter: Backend-for-Frontend (BFF) que actúa como capa de orquestación entre la app móvil y los microservicios internos. Reemplaza el patrón MFP de mainframes con una arquitectura moderna en ECS.Adaptar las necesidades del cliente móvil a los protocolos internos. Agrega, transforma y enruta llamadas entre la app y los microservicios.
  • Balance Service: Microservicio de balance corriendo en ECS Fargate. Expone una API interna REST para consultar el saldo e historial de movimientos.Dueño del dominio de balance. Única fuente de verdad para el saldo de una cuenta.
  • Transfer Service: Microservicio de transferencias corriendo en ECS Fargate. Procesa operaciones de débito y crédito entre cuentas con garantías ACID.Dueño del dominio de transferencias. Garantiza que las operaciones monetarias sean atómicas y auditables.
  • RDS PostgreSQL: Amazon RDS PostgreSQL Multi-AZ. Base de datos transaccional para cuentas, saldos y movimientos. Failover automático en < 120 segundos.Fuente de verdad del sistema. Almacena todos los datos de negocio con garantías ACID.
  • ElastiCache Redis: Amazon ElastiCache Redis como caché de lectura para saldos. Reduce la carga en RDS y sirve consultas frecuentes en < 5ms.Capa de caché de alta velocidad. Objetivo: servir el 90% de consultas de balance sin tocar RDS.

Escenarios

  • Consulta de balance — Cache HIT: Usuario consulta su saldo. Redis tiene el dato cacheado — latencia total ~50ms sin tocar RDS.
  • Transferencia bancaria: Usuario transfiere dinero. RDS ejecuta la transacción ACID y Redis invalida el saldo stale para garantizar consistencia.