프로젝트를 진행할때 파일첨부를 구현하면서 AWS S3를 주요 사용해왔지만, 로컬 경로를 통한 업로드 또한 가끔 사용해보면서 스프링부트에서 파일첨부할 때 대표적으로 사용하는 방법에 대해서 알아보게 되었다.
일단, 스프링 부트에서 파일 첨부를 처리하는 주요 방법에는 대표적으로 두가지가 있다.
- 파일 서버 또는 클라우드 스토리지 사용:
- AWS S3, Google Cloud Storage, Azure Blob Storage 등과 같은 클라우드 스토리지 서비스를 이용하여 파일을 업로드하고 관리할 수 있다.
- 이 방법의 장점은 파일 저장소가 클라우드에 있기 때문에 확장성과 접근성이 뛰어나며, 데이터 백업과 보안이 비교적 쉽다는 점이 있다.
- 서버 로컬 경로에 파일 업로드:
- 파일을 서버의 특정 디렉토리에 직접 저장하는 방식
- 이 방법은 설정이 상대적으로 간단하고 초기 비용이 적지만, 서버의 저장 용량이 제한적이고 확장성이 떨어지며, 서버의 파일시스템에 대한 직접적인 접근이 필요해 보안상의 위험이 있을 수 있다.
두 방법 중 어떤 것을 선택할지는 프로젝트의 요구사항, 파일 크기, 보안, 비용, 접근성 등의 요소를 고려하여 결정해야 하지만 대체적으로 파일서버를 사용하는 추세이다.
'Develop > Spring' 카테고리의 다른 글
[Spring]Filter와 Interceptor의 개념 및 차이 (0) | 2024.10.17 |
---|---|
[Spring] Validator의 주요개념과 적용 방법 (0) | 2024.10.02 |
@RequestBody와 @ModelAttribute (0) | 2024.08.01 |
RedirectAttributes란 무엇일까 (0) | 2024.07.12 |
@Component 어노테이션과 Validator (0) | 2024.07.10 |