강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

장준혁님의 프로필 이미지
장준혁

작성한 질문수

실리콘밸리 빅테크 29개의 실습으로 배우는 시스템 디자인 설계

Imgur 이미지 호스팅 서비스 시스템 디자인 및 스케일링 DeepDive [업데이트]

Imgur 이미지 호스팅 서비스 질문

작성

·

8

0

시스템 디자인 관련 질문

  • 서버가 PreSigned URL 을 발급하면 클라이언트가 URL 을 기반으로 Blob Storage에 다이렉트로 파일을 업로드 한 것으로 이해했습니다.

    클라이언트가 업로드를 하는데 서버가 현재 청크의 진행상황을 탐지하여 Key-Value 에 업데이트 하는 메커니즘이 궁금합니다.

    가령 서버가 Blob Storage 를 주기적으로 찔러 업데이트하는 과정일지 궁금합니다. 그림 상으로는 서버가 청크 진행상황을 알기위해서 추가적인 메커니즘이 있을까 생각이 들어서요.

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. 장준혁님께서 질문해주신 Imgur 이미지 호스팅 서비스의 PreSigned URL과 관련된 클라이언트의 업로드 진행 상황을 서버가 어떻게 탐지하는지에 대해 답변드리겠습니다.

PreSigned URL 기반 업로드

  1. PreSigned URL의 동작 이해:

    • 클라이언트는 서버로부터 PreSigned URL을 발급받아 해당 URL을 통해 직접 Blob Storage에 파일을 업로드할 수 있습니다. 이 과정에서 서버는 실제 파일 데이터에 접근하지 않고도 클라이언트가 데이터를 저장할 수 있도록 지원합니다.
  2. 청크 업로드 진행 상황 탐지:

    • 일반적으로 Blob Storage로의 청크 업로드를 모니터링하기 위한 방법으로는 클라이언트가 특정 이벤트를 트리거하여 서버에 진행 상황을 업데이트하는 방식이 있습니다.
    • 이벤트 기반 업데이트: 클라이언트는 각 청크 업로드 완료 시, 진행 상황을 서버에 알리는 API를 호출할 수 있습니다. 이 API는 현재까지 업로드된 청크의 상태를 서버의 Key-Value 저장소에 기록합니다.
    • 청크 상태 확인: 백그라운드 서비스가 주기적으로 Blob Storage 상태를 확인하여 진행 상황을 업데이트하는 방법도 사용됩니다. 이 서비스는 Blob Storage의 API를 이용해 청크의 업로드 완료 여부를 확인할 수 있습니다.
  3. 추가적인 메커니즘:

    • Webhook: Blob Storage에서 제공하는 Webhook 설정을 통해, 특정 이벤트(예: 청크 업로드 완료)가 발생할 때마다 서버로 알림을 보냅니다.
    • Lifecycle Policy: Blob Storage의 라이프사이클 정책을 사용하여 상태 변화(업로드 완료 등)를 감지하고 이를 서버와 연계하여 모니터링할 수 있습니다.

위 설명을 통해 클라이언트의 청크 업로드 진행 상황을 서버에서 효율적으로 탐지하고 업데이트하는 방법에 대해 이해하는 데 도움이 되시길 바랍니다.

비슷한 주제로 다룬 유사 질문이 있으니, 아래의 답변을 참조하시면 세부적인 내용 이해에 도움을 줄 수 있을 것입니다:
- “Blob Storage에서 파일 업로드 동작 및 상태 확인 메커니즘”

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

장준혁님의 프로필 이미지
장준혁

작성한 질문수

질문하기