← Voltar aos artigos
March 25, 2026
5 min read

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

Aeron: por dentro do sistema de mensageria que move metade da industria de 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 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

Metrica Valor
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) P99 39 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

Projeto Linguagem Pontos fortes Pontos fracos
Aeron Java/C Maduro, testado em producao, ecossistema completo Overhead da JVM, sem kernel bypass (open-source)
ZigBolt Zig 20 ns SPSC, codecs zero-copy, sem GC Projeto jovem (v0.2.1)
Chronicle Queue Java Persistente, bilhoes de msg/dia GC da JVM, pesado
ZeroMQ C API simples, muitos transportes Sem 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.}
}
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

Fique à frente do mercado

Assine nossa newsletter para insights exclusivos sobre trading com IA, análises de mercado e atualizações da plataforma.

Respeitamos sua privacidade. Cancele a inscrição a qualquer momento.