← Retour aux articles
March 25, 2026
5 min de lecture

Aeron : au coeur du systeme de messagerie qui fait tourner la moitie de l'industrie HFT

Aeron : au coeur du systeme de messagerie qui fait tourner la moitie de l'industrie 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, memoire partagee, logs a triple buffer, l'architecture qui a defini le standard de la messagerie a faible latence.

Des qu'il est question de systemes de messagerie pour le trading haute frequence, un nom revient dans chaque conversation : Aeron. Developpe par Martin Thompson et l'equipe de Real Logic (plus tard Adaptive Financial Consulting), Aeron est devenu le standard de facto pour la transmission de donnees dans un monde ou les microsecondes decident de tout.

Dans cet article, nous decomposons Aeron en ses parties : Transport, Archive, Cluster et Sequencer. Nous expliquons comment il fonctionne en interne, ou se situent ses forces, et ou commencent les problemes.


TL;DR

  • Aeron : systeme de messagerie open source (Apache 2.0) pour les applications a faible latence
  • Latence IPC : ~250 ns aller-retour via memoire partagee
  • Debit : plus de 20 millions de messages par seconde
  • Quatre produits : Transport (coeur), Archive (enregistrement/relecture), Cluster (Raft), Sequencer (ordre total)
  • Langage : Java (principal) + client C (moins complet)
  • Utilise par : des dizaines de societes HFT, teneurs de marche et bourses

Partie 1 : Aeron Transport, le coeur

Architecture : Media Driver

Aeron Media Driver

Le composant central est le Media Driver : un processus separe (ou une bibliotheque embarquee) qui gere toute la transmission de donnees. Les applications communiquent avec lui via la memoire partagee (fichiers mmap dans /dev/shm).

Structures de donnees cles :

  • ManyToOneRingBuffer (MPSC) : commandes des clients vers le Media Driver
  • BroadcastTransmitter/Receiver : reponses du Media Driver vers les clients
  • Log Buffers : log append-only a triple buffer pour les donnees
  • Position Counters : compteurs atomiques pour la coordination des positions

Performance

Metrique Valeur
IPC (memoire partagee) RTT ~250 ns
UDP unicast RTT (bare metal) ~10 us
UDP unicast RTT (cloud, AWS) <100 us
Debit >20M msg/sec
Aeron Premium (kernel bypass) P99 39 us

Partie 2 : Aeron Archive, enregistrer et rejouer

Archive enregistre les flux de messages sur disque pour les rejouer depuis n'importe quelle position. Cas d'usage : audit reglementaire, recuperation apres panne, backtesting, debogage.


Partie 3 : Aeron Cluster, consensus Raft

Raft Consensus

Machine a etats repliquee et tolerante aux pannes pour les systemes ou la perte d'un message est inacceptable (moteurs de matching, gestion des ordres). Election de leader, replication du log, lectures fortement coherentes.


Partie 4 : Aeron Sequencer, ordonnancement total

Nouveau produit (2025) optimise pour les marches de capitaux. Il fournit un ordonnancement global unique de tous les evenements, essentiel pour les moteurs de matching et le market making multi-venue. Construit sur Cluster. Produit commercial (code source ferme).


Faiblesses

JVM Overhead and GC Pauses

  1. Dependance a la JVM : safepoints, pauses GC, warm-up du JIT
  2. Surcout du Media Driver : un saut supplementaire via la memoire partagee
  3. Pas de kernel bypass natif : UDP uniquement (io_uring, DPDK ne sont pas supportes dans la version open source)
  4. SBE est separe : schemas XML, generateur de code Java, etape de build distincte
  5. Pas de networking zero-copy : les donnees sont copiees du socket vers le log buffer

Alternatives

Projet Langage Forces Faiblesses
Aeron Java/C Mature, eprouve, ecosysteme complet Surcout de la JVM, pas de kernel bypass (open source)
ZigBolt Zig 20 ns SPSC, codecs zero-copy, pas de GC Projet jeune (v0.2.1)
Chronicle Queue Java Persistant, milliards de msg/jour GC de la JVM, lourd
ZeroMQ C API simple, nombreux transports Pas de couche de fiabilite, pas de clustering

Chez Marketmaker.cc, nous avons developpe ZigBolt, une alternative open source a Aeron en Zig. Pas de JVM, pas de GC, codecs comptime, latence SPSC de 20 ns. En savoir plus dans notre article sur ZigBolt.


Liens :


Citation

@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

Gardez une longueur d'avance sur le marché

Abonnez-vous à notre newsletter pour des insights exclusifs sur le trading IA, des analyses de marché et des mises à jour de la plateforme.

Nous respectons votre vie privée. Désabonnement possible à tout moment.