← Мақалаларға оралу
March 25, 2026
5 мин оқу

Aeron: HFT саласының жартысын қозғайтын хабар алмасу жүйесінің ішкі құрылымы

Aeron: 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, ортақ жад, үш есе буферленген логтар — төмен кідірісті хабар алмасудың стандартын белгілеген архитектура.

Жоғары жиілікті сауда үшін хабар алмасу жүйелері туралы сөз болғанда, әр әңгімеде бір атау аталады — Aeron. Martin Thompson мен Real Logic командасы (кейін Adaptive Financial Consulting) әзірлеген Aeron микросекундтар бәрін шешетін әлемде деректерді тасымалдаудың нақты стандартына айналды.

Бұл мақалада біз Aeron-ды оның бөліктеріне жіктейміз: Transport, Archive, Cluster және Sequencer. Оның ішінде қалай жұмыс істейтінін, күшті жақтары қайда екенін — және мәселелер қайдан басталатынын түсіндіреміз.


TL;DR

  • Aeron — төмен кідірісті қолданбаларға арналған ашық бастапқы кодты (Apache 2.0) хабар алмасу жүйесі
  • IPC кідірісі: ортақ жад арқылы ~250 ns толық айналым
  • Өткізу қабілеті: секундына 20+ миллион хабарлама
  • Төрт өнім: Transport (ядро), Archive (жазу/қайта ойнату), Cluster (Raft), Sequencer (толық реттілік)
  • Тіл: Java (негізгі) + C клиенті (толық емес)
  • Қолданушылар: ондаған HFT фирмалары, маркет-мейкерлер және биржалар

1-бөлім: Aeron Transport — Ядро

Архитектура: Media Driver

Aeron Media Driver

Орталық компонент — Media Driver — барлық деректерді тасымалдауды басқаратын жеке процесс (немесе кірістірілген кітапхана). Қолданбалар онымен ортақ жад арқылы (/dev/shm ішіндегі mmap файлдары) байланысады.

Негізгі деректер құрылымдары:

  • ManyToOneRingBuffer (MPSC) — клиенттерден Media Driver-ге командалар
  • BroadcastTransmitter/Receiver — Media Driver-ден клиенттерге жауаптар
  • Log Buffers — деректерге арналған үш есе буферленген append-only лог
  • Position Counters — позицияны үйлестіруге арналған атомдық санауыштар

Өнімділік

Метрика Мән
IPC (ортақ жад) RTT ~250 ns
UDP unicast RTT (bare metal) ~10 us
UDP unicast RTT (бұлт, AWS) <100 us
Өткізу қабілеті >20M msg/sec
Aeron Premium (kernel bypass) P99 39 us

2-бөлім: Aeron Archive — Жазу және қайта ойнату

Archive хабарлама ағындарын кез келген позициядан қайта ойнату үшін дискіге жазады. Қолдану жағдайлары: реттеуші аудит, апаттан кейін қалпына келтіру, backtesting, түзету.


3-бөлім: Aeron Cluster — Raft консенсусы

Raft Consensus

Хабарламаны жоғалту жол берілмейтін жүйелерге арналған ақауларға төзімді репликацияланған күй машинасы (matching engine-дер, тапсырыстарды басқару). Лидерді сайлау, лог репликациясы, қатаң дәйекті оқулар.


4-бөлім: Aeron Sequencer — Толық реттілік

Капитал нарықтарына оңтайландырылған жаңа өнім (2025). Барлық оқиғалардың бірыңғай жаһандық реттілігін қамтамасыз етеді — matching engine-дер мен көп алаңды маркет-мейкинг үшін маңызды. Cluster негізінде құрылған. Коммерциялық өнім (жабық бастапқы код).


Әлсіз жақтары

JVM Overhead and GC Pauses

  1. JVM тәуелділігі — safepoint-тар, GC кідірістері, JIT қыздыру
  2. Media Driver үстеме шығыны — ортақ жад арқылы қосымша секіріс
  3. Нативті kernel bypass жоқ — тек UDP (io_uring, DPDK ашық бастапқы кодта қолдау таппайды)
  4. SBE бөлек — XML схемалары, Java код генераторы, бөлек build қадамы
  5. Zero-copy networking жоқ — деректер сокеттен лог буферге көшіріледі

Баламалар

Жоба Тіл Күшті жақтары Әлсіз жақтары
Aeron Java/C Жетілген, ұрыста сыналған, толық экожүйе JVM үстеме шығыны, kernel bypass жоқ (ашық бастапқы код)
ZigBolt Zig 20 ns SPSC, zero-copy кодектер, GC жоқ Жас жоба (v0.2.1)
Chronicle Queue Java Тұрақты, күніне миллиардтаған хабарлама JVM GC, ауыр салмақты
ZeroMQ C Қарапайым API, көптеген транспорттар Сенімділік қабаты жоқ, кластерлеу жоқ

Біз Marketmaker.cc-те ZigBolt әзірледік — Zig-тегі Aeron-ның ашық бастапқы кодты баламасы. JVM жоқ, GC жоқ, comptime кодектер, 20 ns SPSC кідірісі. Толығырақ біздің ZigBolt мақаламызда оқыңыз.


Сілтемелер:


Дәйексөз

@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

Нарықтан бір қадам алда болыңыз

AI сауда талдаулары, нарық аналитикасы және платформа жаңалықтары үшін біздің ақпараттық бюллетеньге жазылыңыз.

Біз сіздің жекелігіңізді құрметтейміз. Кез келген уақытта жазылымнан шығуға болады.