← Kembali ke artikel
March 25, 2026
Bacaan 5 minit

Aeron: Di Dalam Sistem Pesanan Yang Menguasai Separuh Industri HFT

Aeron: Di Dalam Sistem Pesanan Yang Menguasai Separuh Industri HFT
#aeron
#hft
#latensi-rendah
#pesanan
#java
#ipc
#raft
#kewangan

Seni Bina Pesanan Aeron Aeron: Media Driver, memori dikongsi, log penimbal tiga kali — seni bina yang menetapkan standard untuk pesanan latensi rendah.

Apabila bercakap tentang sistem pesanan untuk dagangan frekuensi tinggi, satu nama muncul dalam setiap perbincangan — Aeron. Dibangunkan oleh Martin Thompson dan pasukan Real Logic (kemudian Adaptive Financial Consulting), Aeron menjadi standard de facto untuk penghantaran data dalam dunia di mana mikrosaat menentukan segalanya.

Dalam artikel ini, kami mengurai Aeron kepada bahagian-bahagiannya: Transport, Archive, Cluster, dan Sequencer. Kami menerangkan cara ia berfungsi di dalam, di mana kekuatannya terletak — dan di mana masalah bermula.


TL;DR

  • Aeron — sistem pesanan sumber terbuka (Apache 2.0) untuk aplikasi latensi rendah
  • Latensi IPC: ~250 ns round-trip melalui memori dikongsi
  • Daya tampung: 20+ juta mesej sesaat
  • Empat produk: Transport (teras), Archive (rekod/main semula), Cluster (Raft), Sequencer (turutan penuh)
  • Bahasa: Java (utama) + klien C (kurang lengkap)
  • Digunakan oleh: berpuluh-puluh firma HFT, pembuat pasaran, dan bursa

Bahagian 1: Aeron Transport — Teras

Seni Bina: Media Driver

Aeron Media Driver

Komponen utama ialah Media Driver — proses berasingan (atau perpustakaan terbenam) yang menguruskan semua penghantaran data. Aplikasi berkomunikasi dengannya melalui memori dikongsi (fail mmap dalam /dev/shm).

Struktur data utama:

  • ManyToOneRingBuffer (MPSC) — arahan daripada klien ke Media Driver
  • BroadcastTransmitter/Receiver — respons daripada Media Driver ke klien
  • Log Buffers — log tambah sahaja penimbal tiga kali untuk data
  • Position Counters — pembilang atom untuk penyelarasan kedudukan

Prestasi

Metrik Nilai
IPC (memori dikongsi) RTT ~250 ns
UDP unicast RTT (logam biasa) ~10 us
UDP unicast RTT (awan, AWS) <100 us
Daya tampung >20J msg/saat
Aeron Premium (pintasan kernel) P99 39 us

Bahagian 2: Aeron Archive — Rekod dan Main Semula

Archive merekodkan aliran mesej ke cakera untuk dimainkan semula dari mana-mana kedudukan. Kes penggunaan: audit kawal selia, pemulihan nahas, backtesting, penyahpepijatan.


Bahagian 3: Aeron Cluster — Konsensus Raft

Konsensus Raft

Mesin keadaan replikasi bertoleransi kesalahan untuk sistem di mana kehilangan mesej tidak boleh diterima (enjin padanan, pengurusan pesanan). Pemilihan pemimpin, replikasi log, bacaan konsisten kukuh.


Bahagian 4: Aeron Sequencer — Turutan Penuh

Produk baharu (2025) yang dioptimumkan untuk pasaran modal. Menyediakan turutan global tunggal bagi semua peristiwa — kritikal untuk enjin padanan dan pembuatan pasaran pelbagai tempat. Dibina di atas Cluster. Produk komersial (sumber tertutup).


Kelemahan

Overhead JVM dan Jeda GC

  1. Kebergantungan JVM — safepoint, jeda GC, pemanasan JIT
  2. Overhead Media Driver — lompatan tambahan melalui memori dikongsi
  3. Tiada pintasan kernel asli — UDP sahaja (io_uring, DPDK tidak disokong dalam sumber terbuka)
  4. SBE berasingan — skema XML, penjana kod Java, langkah binaan berasingan
  5. Tiada rangkaian salinan sifar — data disalin dari soket ke penimbal log

Alternatif

Projek Bahasa Kekuatan Kelemahan
Aeron Java/C Matang, teruji pertempuran, ekosistem penuh Overhead JVM, tiada pintasan kernel (sumber terbuka)
ZigBolt Zig 20 ns SPSC, codec salinan sifar, tiada GC Projek muda (v0.2.1)
Chronicle Queue Java Berterusan, berbilion msg/hari GC JVM, berat
ZeroMQ C API mudah, banyak transport Tiada lapisan kebolehpercayaan, tiada pengelompokan

Kami di Marketmaker.cc membangunkan ZigBolt — alternatif Aeron sumber terbuka dalam Zig. Tiada JVM, tiada GC, codec comptime, latensi SPSC 20 ns. Baca lebih lanjut dalam artikel ZigBolt kami.


Pautan:


Petikan

@article{soloviov2026aeron,
  author = {Soloviov, Eugen},
  title = {Aeron: Inside the Messaging System That Powers Half of the HFT Industry},
  year = {2026},
  url = {https://marketmaker.cc/ms/blog/post/aeron-messaging-overview},
  description = {Analisis mendalam seni bina: Aeron Transport, Archive, Cluster, Sequencer.}
}
Penafian: Maklumat yang disediakan dalam artikel ini adalah untuk tujuan pendidikan dan maklumat sahaja dan bukan merupakan nasihat kewangan, pelaburan, atau dagangan. Dagangan mata wang kripto melibatkan risiko kerugian yang ketara.

Pengarang

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

Kekal Mendahului Pasaran

Langgan surat berita kami untuk pandangan dagangan AI eksklusif, analisis pasaran, dan kemas kini platform.

Kami menghormati privasi anda. Berhenti melanggan pada bila-bila masa.