Backend
home
🚀

Drive-Lite: 확장 가능한 대용량 파일 업로드 & 공유 시스템

생성일
2025/08/24 11:46
태그
협업 프로젝트

전체 아키텍처 개요

flowchart LR
subgraph Client
A[Web/CLI Uploader]
end


subgraph BE[Spring Boot API]
B1[UploadController]
B2[DownloadController]
B3[Auth/RBAC]
B4[Metrics/Actuator]
end


subgraph Storage
S1[(Object Storage or Local FS)]
S2[(MongoDB: Metadata)]
S3[(Redis: Upload Session, PreSigned, Streams, Rate)]
end


subgraph Worker
W1[Thumbnail Worker]
end


A -->|10MB chunk PUT| B1
B1 -->|write chunk| S1
B1 <--> |session state| S3
B1 --> |metadata| S2
B1 --> |publish XADD| S3
W1 <--> |XREAD/ACK| S3
W1 --> |thumbnail| S1


B2 --> |issue pre-signed| S3
A -->|GET with token| S1
BE --> B4
Mermaid
복사