프로젝트 배경
1) 예상 리스크 및 대응 계획 - 대용량 파일 복사 중 감지 이벤트 발생 시 불완전한 파일을 처리하지 않도록 쓰기 완료 감지 타이밍 설계가 필요합니다. - 파일명 규칙 예외(특수문자·공백·인코딩 불일치) 파일에 대한 파싱 실패 처리와 운영자 수동 매핑 UX 설계가 필요합니다. - SQLite 단일 파일 DB에서 다수 동시 쓰기(주문 상태 변경 + 로그 + 파일 큐) 충돌을 WAL 모드 + 트랜잭션 직렬
프로젝트 성과
주문 상태 머신 2중 보호 설계
Prisma enum + DB CHECK constraint로 허용되지 않은 상태 전이를 DB 레벨에서 차단하고, API 미들웨어에서 역할별 허용 전이 목록을 추가 검증하는 구조를 설계합니다.
Hot Folder 파이프라인 실패 복구 구조 구현
Bull Queue에 지수 백오프 재시도(최대 3회) 정책을 적용하고, 최종 실패 시 dead-letter 큐에 이동하여 운영자가 수동 재처리할 수 있는 구조를 구현합니다.
이중 로그 저장 아키텍처 구축
winston 트랜스포트를 SQLite DB와 회전 파일에 동시 기록하도록 구성하여 DB 장애 시에도 파일 로그에서 복구 경로를 확보하는 이중화 구조를 설계합니다.
런타임 설정 변경 핫리로드 구현
Node.js EventEmitter로 설정 변경 이벤트를 전파하여 Hot Folder 경로·큐 설정을 재시작 없이 즉시 반영하고, 변경 전·후 값을 audit 로그에 기록합니다.
역할 기반 2단계 접근 제어 설계
JWT role 클레임으로 API 미들웨어와 React 라우트 가드를 동시에 적용하여 운영자·관리자 권한을 서버·클라이언트 양쪽에서 검증하는 구조를 구축합니다.
핵심 기능
진행 단계
도메인 분석 및 DB 스키마 설계
2026.05
주문 상태 머신 전이 규칙 정의, SQLite + Prisma 스키마 설계(주문/파일/로그/설정/계정 테이블 8개), ERD 검토
프로젝트 상세
1) 포트폴리오 소개 DTG 프린터 연동, Hot Folder 자동 파일 전달, 주문 상태 머신(대기→출력준비→출력중→완료/실패), 운영자·관리자 UI 분리를 포함한 현장 운영 관리 시스템을 React + Node.js + SQLite 기반으로 설계·구현합니다. 공고의 핵심 요구사항을 그대로 반영한 데모로, 착수 즉시 이 구조를 확장하여 빠르게 개발을 진행할 수 있습니다. 2) 작업 범위 - 주문 관







