Architecture
billycash의 시스템 구조를 설명합니다. 토큰 발행부터 청산까지의 데이터 흐름, 체인과 오프체인 원장의 분리, 장애 복구 전략을 다룹니다.
System overview
billycash는 발행·유통·청산을 담당하는 Core Services 레이어를 중심으로 구성됩니다. 각 서비스는 Kafka 이벤트로 결합되며, 상태는 Postgres와 프라이빗 체인에 이중화됩니다.
architecture diagram · figure 1
Figure 1 — High-level system diagram
Ledger separation
권리이전은 프라이빗 체인에서 기록되지만, 장부의 최종성은 오프체인 원장이 가집니다. 체인 장애 시에도 오프체인이 단독으로 운영 가능하며, 복구 시 역순 병합(reverse reconciliation) 방식으로 상태를 맞춥니다.
# POST /v1/issuance
curl -X POST https://api.billycrew.info/v1/issuance \
-H "Authorization: Bearer $TOKEN" \
-d '{ "asset_type": "real_estate", "size": 12000000000 }'
| Component | Responsibility | Tech |
|---|---|---|
| Issuance Service | 자산 실사 · 토큰 발행 | Kotlin · Spring |
| Matching Engine | 주문 매칭 · 체결 | Rust · Tokio |
| Settlement | DvP 청산 · 리포팅 | Go · Postgres |
| Private Chain | 권리이전 기록 | Besu · QBFT |
NOTE
온프레미스 배포에서는 Besu 대신 HyperLedger Fabric을 지원합니다. 자세한 내용은 Compliance 섹션을 참고하세요.