πŸ‘©πŸ»‍πŸ’» Dev

[S3] S3 파일 λ‹€μš΄λ‘œλ“œ κΈ°λŠ₯ κ΅¬ν˜„ 방식

jcowwk 2025. 7. 31. 20:59

S3 파일 λ‹€μš΄λ‘œλ“œ κΈ°λŠ₯ κ΅¬ν˜„ 방식


1. μž„μ‹œ 폴더 방식

2. λ©”λͺ¨λ¦¬ 처리 방식

3. Presigned URL 방식


1. μž„μ‹œ 폴더 방식

S3 -> μ„œλ²„ μž„μ‹œ 폴더 μ €μž₯ -> 파일 μ½μ–΄μ„œ HTTP 응닡 -> 파일 μ‚­μ œ

 

- μž₯점

큰 νŒŒμΌλ„ μ•ˆμ •μ μœΌλ‘œ 처리 κ°€λŠ₯ (슀트리밍 κ°€λŠ₯)

λ””μŠ€ν¬μ— 파일 λ‚¨μ•„μ„œ λ””λ²„κΉ…μ΄λ‚˜ μž¬μ‚¬μš© κ°€λŠ₯

 

- 단점

λ””μŠ€ν¬ I/O λΉ„μš© λ°œμƒ

μž„μ‹œ 디렉토리/파일 관리 ν•„μš” (μ‚­μ œ λˆ„λ½ μ‹œ λ””μŠ€ν¬ μš©λŸ‰ 문제)

 

2. λ©”λͺ¨λ¦¬ 처리 방식

s3 -> λ©”λͺ¨λ¦¬λ‘œ λ°”λ‘œ λ‘œλ“œ (InputStream) -> HTTP μ‘λ‹΅μœΌλ‘œ λ°”λ‘œ 전솑

 

- μž₯점

λ””μŠ€ν¬μ— μ“°μ§€ μ•Šμ•„ 속도 빠름

μž„μ‹œ 파일 관리 ν•„μš” μ—†μŒ

 

- 단점

파일 크기가 크면 λ©”λͺ¨λ¦¬ λΆ€λ‹΄ 큼 (OutOfMemory μœ„ν—˜)

 

3. Presigned URL 방식

μ„œλ²„ μž„μ‹œ μ„œλͺ…λœ URL 생성 -> URL둜 파일 λ‹€μš΄λ‘œλ“œ

 

- μž₯점

μ„œλ²„ λΆ€ν•˜ μ—†μŒ, λŒ€μš©λŸ‰ νŒŒμΌμ— 유리, κ΅¬ν˜„ 간단

 

- 단점

URL 유좜 μ‹œ λ³΄μ•ˆ μœ„ν—˜, λ‹€μš΄λ‘œλ“œ 좔적 어렀움


λ¬Έμ œκ°€ 있으면 λŒ“κΈ€ λ‚¨κ²¨μ£Όμ„Έμš” !

ν”Όλ“œλ°±μ€ μ–Έμ œλ‚˜ ν™˜μ˜μž…λ‹ˆλ‹€ <3