-
특정 사용자들에게 대량으로 쿠폰을 발급해야한다.
-
사용자 목록은 csv와 excel에 아래와 같은 양식으로 업로드한다.
customer_id 11111 22222 33333
-
csv와 excel 파일에 대한 검증은 아래 항목에 대해 진행한다.
- 헤더값이 customer_id가 맞는지
- 회원 목록이 비어있지 않은지
- 각각의 회원번호가 유효한지는 검사하지 않습니다.
-
업로드한 파일은 디버깅을 위해 사용자가 다시 다운로드할 수 있어야한다.
-
API 1 : 파일 업로드 API
-
API 2 : 파일 다운로드 API
중요 포인트는 대용량 파일을 어떻게 검증할 것인가에 대한 부분이다. 최대 50NB의 크기를 가지는 엑셀/CSV 파일에 대한 겅증을 수행할 때, 변수 하나가 50MB를 잡고 있다면? API 요청 하나에 몇백MB의 메모리를 사용하게 됨. -> 스트리밍 처리해야한다.
파일 업로드 -> 로컬 혹은 외부 볼륨에 임시 저장 -> 스트리밍을 통한 검증 -> 검증 완료 후 s3 업로드 -> 임시 저장 파일 제거
