아키텍처
시스템 개요
[Frontend (React/Next.js)]
↓ HTTP/HTTPS
[Cloudflare Workers (API)]
↓
[Cloudflare D1 (SQL) + KV (Cache)]
↓
[SUI Blockchain (Move)]
↓
[LLM Service (Myth Engine)]레이어 구조
1. Frontend Layer
- 기술: React, Next.js, TypeScript, Tailwind CSS
- 역할: 사용자 인터페이스, 지갑 연결, 상태 관리
- 배포: Cloudflare Pages (Static Export)
2. API Layer
- 기술: Cloudflare Workers, Hono
- 역할: RESTful API, 인증, Rate Limiting
- 특징: Edge Computing, 자동 확장
3. Data Layer
- D1 Database: SQLite 기반, 영구 데이터 저장
- KV Namespace: 캐시 및 실시간 상태
- 특징: 글로벌 분산, 낮은 지연시간
4. Blockchain Layer
- 기술: SUI, Move 언어
- 역할: Citizen NFT, Chronicle Anchor, Myth Artifact
- 특징: Soulbound NFT, 불변 기록
데이터 흐름
시민 행동 → Chronicle 기록
- Citizen이 Frontend에서 행동 수행
- API 호출:
POST /api/citizen/action - Credit Service가 Civic Credit 계산
- Chronicle Service가 이벤트 기록
- D1 Database에 저장
- Era 종료 시 SUI Blockchain에 앵커링
보안 아키텍처
- 지갑 서명 검증: 모든 요청에 X-Wallet-Address 헤더 필요
- CSRF 보호: CSRF 토큰으로 상태 변경 요청 보호
- SQL Injection 방지: 155개 Prepared Statements 사용
- XSS 방지: Input Sanitization
- Rate Limiting: API 요청 제한
확장성
- Cloudflare Workers: 자동 확장, 1,000+ 동시 사용자 지원
- Edge Computing: 전 세계 어디서나 낮은 지연시간
- 캐싱 전략: KV를 활용한 자주 접근하는 데이터 캐싱
- DB 최적화: 인덱스 생성, Prepared Statements