03 라이브 데이터 스트리밍 · 강사용
라이브로 실행하고, 안전한 성능 저하를 알아보고, 제때 강의실을 fixture로 전환합니다.
macOS terminal: Run workshop commands in Terminal using zsh or bash.
진행 시간
15분. 10분 시점에 차단되었거나 데이터가 한산한 학습자를 fixture 모드로 전환합니다.
강의 스크립트
- WebSocket이 주는 것은 즉시성이며, 내구성이 아닙니다.
- Data API 거래는 구간을 겹쳐 가며 정합성을 맞춥니다. 결정적 ID 덕분에 재실행이 안전합니다.
- CLOB REST는 소켓이 재연결되는 동안 BBO/스프레드를 최신 상태로 유지합니다.
degraded는 솔직하고 유용한 상태입니다.unhealthy는 Cloud 쓰기가 멈췄거나 모든 소스가 오래되었다는 뜻입니다.
자주 발생하는 장애
- WebSocket 핸드셰이크 타임아웃:
last_book_fallback_at을 기다리세요. 재시작을 반복하지 마세요. - 헬스 503:
reason,queue_depth,last_clickhouse_write_at을 확인합니다. - 60초가 지나도 틱이 0개: 이후 모듈이 결정적으로 진행되도록 fixture를 사용합니다.
- 8090 포트가 사용 중: 트러블슈팅의 포트 변경 방법을 사용합니다.
초기화
docker compose --env-file .env.polymarket down
docker compose --env-file .env.polymarket up -d --build collector
curl --fail --silent http://localhost:8090/health | python3 -m json.tool재시작하면 최근 ID와 거래 체크포인트를 ClickHouse Cloud에서 다시 읽어 옵니다.