← Volver a los artículos
March 25, 2026
5 min de lectura

Aeron: por dentro del sistema de mensajeria que impulsa a la mitad de la industria HFT

Aeron: por dentro del sistema de mensajeria que impulsa a la mitad de la industria HFT
#aeron
#hft
#low-latency
#messaging
#java
#ipc
#raft
#finance
🛰️
Part 2 of 4 · Collection
Low-Latency Trading Infrastructure

Aeron Messaging Architecture Aeron: Media Driver, memoria compartida, logs con triple buffer: la arquitectura que fijo el estandar para la mensajeria de baja latencia.

Cuando se habla de sistemas de mensajeria para el trading de alta frecuencia, hay un nombre que aparece en cada conversacion: Aeron. Desarrollado por Martin Thompson y el equipo de Real Logic (mas tarde Adaptive Financial Consulting), Aeron se convirtio en el estandar de facto para la transmision de datos en un mundo donde los microsegundos lo deciden todo.

En este articulo desglosamos Aeron en sus partes: Transport, Archive, Cluster y Sequencer. Explicamos como funciona por dentro, donde estan sus fortalezas y donde empiezan los problemas.


TL;DR

  • Aeron: sistema de mensajeria de codigo abierto (Apache 2.0) para aplicaciones de baja latencia
  • Latencia IPC: ~250 ns de ida y vuelta a traves de memoria compartida
  • Rendimiento: mas de 20 millones de mensajes por segundo
  • Cuatro productos: Transport (nucleo), Archive (grabacion/reproduccion), Cluster (Raft), Sequencer (orden total)
  • Lenguaje: Java (principal) + cliente en C (menos completo)
  • Utilizado por: decenas de firmas HFT, creadores de mercado y bolsas

Parte 1: Aeron Transport, el nucleo

Arquitectura: Media Driver

Aeron Media Driver

El componente central es el Media Driver: un proceso separado (o una biblioteca embebida) que gestiona toda la transmision de datos. Las aplicaciones se comunican con el a traves de memoria compartida (archivos mmap en /dev/shm).

Estructuras de datos clave:

  • ManyToOneRingBuffer (MPSC): comandos de los clientes al Media Driver
  • BroadcastTransmitter/Receiver: respuestas del Media Driver a los clientes
  • Log Buffers: log append-only con triple buffer para los datos
  • Position Counters: contadores atomicos para la coordinacion de posiciones

Rendimiento

Metrica Valor
IPC (memoria compartida) RTT ~250 ns
UDP unicast RTT (bare metal) ~10 us
UDP unicast RTT (nube, AWS) <100 us
Rendimiento >20M msg/sec
Aeron Premium (kernel bypass) P99 39 us

Parte 2: Aeron Archive, grabar y reproducir

Archive graba flujos de mensajes en disco para reproducirlos desde cualquier posicion. Casos de uso: auditoria regulatoria, recuperacion ante fallos, backtesting, depuracion.


Parte 3: Aeron Cluster, consenso Raft

Raft Consensus

Maquina de estados replicada y tolerante a fallos para sistemas donde perder un mensaje es inaceptable (motores de matching, gestion de ordenes). Eleccion de lider, replicacion de log, lecturas fuertemente consistentes.


Parte 4: Aeron Sequencer, ordenamiento total

Producto nuevo (2025) optimizado para los mercados de capitales. Proporciona un unico ordenamiento global de todos los eventos: critico para los motores de matching y el market making multi-venue. Construido sobre Cluster. Producto comercial (codigo cerrado).


Debilidades

JVM Overhead and GC Pauses

  1. Dependencia de la JVM: safepoints, pausas de GC, calentamiento del JIT
  2. Sobrecarga del Media Driver: un salto adicional a traves de la memoria compartida
  3. Sin kernel bypass nativo: solo UDP (io_uring, DPDK no son compatibles en la version de codigo abierto)
  4. SBE es aparte: esquemas XML, generador de codigo Java, paso de build separado
  5. Sin networking zero-copy: los datos se copian del socket al log buffer

Alternativas

Proyecto Lenguaje Fortalezas Debilidades
Aeron Java/C Maduro, probado en produccion, ecosistema completo Sobrecarga de la JVM, sin kernel bypass (codigo abierto)
ZigBolt Zig 20 ns SPSC, codecs zero-copy, sin GC Proyecto joven (v0.2.1)
Chronicle Queue Java Persistente, miles de millones de msg/dia GC de la JVM, pesado
ZeroMQ C API simple, muchos transportes Sin capa de fiabilidad, sin clustering

En Marketmaker.cc desarrollamos ZigBolt, una alternativa de codigo abierto a Aeron en Zig. Sin JVM, sin GC, codecs comptime, latencia SPSC de 20 ns. Lee mas en nuestro articulo sobre ZigBolt.


Enlaces:


Cita

@article{soloviov2026aeron,
  author = {Soloviov, Eugen},
  title = {Aeron: Inside the Messaging System That Powers Half of the HFT Industry},
  year = {2026},
  url = {https://marketmaker.cc/en/blog/post/aeron-messaging-overview},
  description = {Architecture deep-dive: Aeron Transport, Archive, Cluster, Sequencer.}
}
blog.disclaimer

Authors

Eugen Soloviov
Eugen Soloviov

Trading-systems engineer

Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.

Newsletter

Mantente a la vanguardia

Suscríbete a nuestro boletín para recibir información exclusiva sobre trading con IA, análisis de mercado y actualizaciones de la plataforma.

Respetamos tu privacidad. Puedes darte de baja en cualquier momento.