Aeron: por dentro do sistema de mensageria que move metade da industria de HFT

Uma analise aprofundada do Aeron - o sistema de mensageria da Real Logic para trading de alta frequencia. Transport, Archive, Cluster, Sequencer. O que ha por dentro, como funciona e onde estao os gargalos.

Aeron Messaging Architecture Aeron: Media Driver, memoria compartilhada, logs com triplo buffer — a arquitetura que definiu o padrao para mensageria de baixa latencia.

Quando o assunto e sistemas de mensageria para trading de alta frequencia, um nome aparece em toda conversa — Aeron. Desenvolvido por Martin Thompson e pela equipe da Real Logic (mais tarde Adaptive Financial Consulting), o Aeron tornou-se o padrao de fato para a transmissao de dados em um mundo onde os microssegundos decidem tudo.

Neste artigo, dividimos o Aeron em suas partes: Transport, Archive, Cluster e Sequencer. Explicamos como funciona por dentro, onde estao seus pontos fortes — e onde comecam os problemas.


TL;DR

  • Aeron — sistema de mensageria open-source (Apache 2.0) para aplicacoes de baixa latencia
  • Latencia IPC: ~250 ns de ida e volta via memoria compartilhada
  • Throughput: mais de 20 milhoes de mensagens por segundo
  • Quatro produtos: Transport (nucleo), Archive (gravacao/replay), Cluster (Raft), Sequencer (ordenacao total)
  • Linguagem: Java (principal) + cliente C (menos completo)
  • Usado por: dezenas de firmas de HFT, formadores de mercado e bolsas

Parte 1: Aeron Transport — o nucleo

Arquitetura: Media Driver

Aeron Media Driver

O componente central e o Media Driver — um processo separado (ou biblioteca embarcada) que gerencia toda a transmissao de dados. As aplicacoes se comunicam com ele por meio de memoria compartilhada (arquivos mmap em /dev/shm).

Estruturas de dados principais:

  • ManyToOneRingBuffer (MPSC) — comandos dos clientes para o Media Driver
  • BroadcastTransmitter/Receiver — respostas do Media Driver para os clientes
  • Log Buffers — log append-only com triplo buffer para os dados
  • Position Counters — contadores atomicos para a coordenacao de posicoes

Desempenho

MetricaValor
IPC (memoria compartilhada) RTT~250 ns
UDP unicast RTT (bare metal)~10 us
UDP unicast RTT (nuvem, AWS)<100 us
Throughput>20M msg/sec
Aeron Premium (kernel bypass) P9939 us

Parte 2: Aeron Archive — gravar e reproduzir

O Archive grava fluxos de mensagens em disco para reproducao a partir de qualquer posicao. Casos de uso: auditoria regulatoria, recuperacao apos falha, backtesting, depuracao.


Parte 3: Aeron Cluster — consenso Raft

Raft Consensus

Maquina de estados replicada e tolerante a falhas para sistemas em que perder uma mensagem e inaceitavel (matching engines, gestao de ordens). Eleicao de lider, replicacao de log, leituras fortemente consistentes.


Parte 4: Aeron Sequencer — ordenacao total

Produto novo (2025) otimizado para mercados de capitais. Fornece uma unica ordenacao global de todos os eventos — critico para matching engines e market making multi-venue. Construido sobre o Cluster. Produto comercial (codigo fechado).


Pontos fracos

JVM Overhead and GC Pauses

  1. Dependencia da JVM — safepoints, pausas de GC, aquecimento do JIT
  2. Overhead do Media Driver — um salto extra pela memoria compartilhada
  3. Sem kernel bypass nativo — apenas UDP (io_uring, DPDK nao sao suportados na versao open-source)
  4. SBE e separado — esquemas XML, gerador de codigo Java, etapa de build separada
  5. Sem networking zero-copy — os dados sao copiados do socket para o log buffer

Alternativas

ProjetoLinguagemPontos fortesPontos fracos
AeronJava/CMaduro, testado em producao, ecossistema completoOverhead da JVM, sem kernel bypass (open-source)
ZigBoltZig20 ns SPSC, codecs zero-copy, sem GCProjeto jovem (v0.2.1)
Chronicle QueueJavaPersistente, bilhoes de msg/diaGC da JVM, pesado
ZeroMQCAPI simples, muitos transportesSem camada de confiabilidade, sem clustering

Nos, da Marketmaker.cc, desenvolvemos o ZigBolt — uma alternativa open-source ao Aeron em Zig. Sem JVM, sem GC, codecs comptime, latencia SPSC de 20 ns. Leia mais em nosso artigo sobre o ZigBolt.


Links:


Citacao

@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.}
}