Explore this system
Step through curated paths without changing the source diagram.
Beat
Next
ReadyChapter 01 / 01
Guided chapter
Diagram guideExplore this system
Inspecting compiled semantics
E ExportT ThemeS Style0 Reset+ Zoom in- Zoom outEsc Close
Find a node
⌕/
No matching nodes
Semantic passport
Verified source
Authored reach
Route probeChoose a start node
Pick two semantic nodes on the diagram
Choose the source, then the destination. Direction matters.
Semantic lensCompare system roles
Choose up to two semantic kinds. One reveals its real traffic; two compare only direct authored relationships.
Choose a kind to inspect its nodes and touching relationships.
Semantic radar
Building overview
Click nodeDrag to pan
한 대에 무엇이 들었나
• Rust 매칭 엔진 1 + Go 서비스 11 + Next.js 앱 3
• MySQL · Redis · MongoDB · Kafka · ZooKeeper 도 같은 컨테이너로
• 매칭 엔진은 심볼마다 전용 OS 스레드를 띄우고 채널로 주문을 받는다
왜 관리형을 뺐나
• RDS · ElastiCache · MSK · ECS · ALB 를 전부 걷어냈다
• 비용의 대부분은 트래픽이 아니라 켜져 있다는 사실에서 나온다
• 데모에 필요한 건 다중 AZ 이중화가 아니라 눌렀을 때 뜨는 것
경계에서 생긴 일
• CloudFront 가 Host 헤더를 그대로 넘기면 Caddy 가 갈 곳을 못 찾아 502
• TLS 는 통과하므로 인증서는 멀쩡해 보인다 — 증상이 헷갈리는 이유
• 원본 이름을 앱마다 따로 둬 연결 단계에서 갈라지게 했다
오더북은 메모리에만 있다
• 엔진이 죽으면 오더북은 사라지는데 DB 주문은 '거래중' 으로 남는다
• 재기동 80분 뒤 미체결의 94~98% 가 재기동 이전 것이었다
• 그래서 기동할 때 MySQL 의 미체결을 오더북으로 되돌린다
Architecture diagram • Built with Archify • Create yours ↗ • Hover to trace • R route • Click to focus • +/− zoom • M radar • [/] views • P play story • T theme • E export