YouTube System Design - Interview Question #TechPrep #SystemDesign #SoftwareEngineering
- 사용자는 UI를 통해 동영상을 업로드하려고 시도하며, 업로드 세션을 시작하기 위한 POST 요청을 API Gateway로 보냅니다. 📼
- API Gateway는 동영상 업로드 서비스로 요청을 라우팅하고, 이 서비스는 클라이언트가 원본 동영상 저장소에 각 섹션을 업로드할 수 있는 사전 서명된 URL을 생성합니다. 📂
- 업로드가 완료되면 클라이언트는 API Gateway로 다른 요청을 보내고, 동영상 업로드 서비스는 저장 서비스에 각 섹션을 종합하여 최종 동영상 파일을 생성하도록 지시합니다. 🏗️
- 동영상 업로드 서비스는 작업 추적 큐에 메시지를 배치하고, 작업 추적 서비스가 이 메시지를 급격하게 가져와 작업 데이터베이스에 새 작업을 생성합니다. 📊
- 인코딩 작업자들이 인코딩 큐에서 메시지를 가져와 동영상을 인코딩합니다. 📽️
- 마지막으로 메디아 프로세싱 큐에서 작업자들이 메시지를 처리하여 동영상을 프로세스하고 완료된 작업을 알리는 작업 추적 큐에 메시지를 보냅니다. 🪄