최근 외주 업체가 관리하던 프로젝트를 인수를 받으며, 현업으로부터 이미지 업로드 속도가 너무 느리다는 이슈가 제기 되었었습니다. 그러면서 기존 코드를 새로운 코드로 개선을 하기위해 S3 AWS SDK부터 처음부터 설정을 하게 되면서 글을 정리하게 되었습니다.
기존 코드는 여러 서비스에 'AmazonS3'을 매번 생성하여 사용하고 있다던가, 코드가 정리 정돈이 되지 않아 유지보수가 힘들 것이라고 판단을 하였습니다. 이왕이면 새롭게 만들어 보기로 하였고, 찾아보니 기존 v1 형식으로 사용하고 있어 v2와의 차이가 무엇인지를 알아보며 코드를 작성하고자 하였습니다.
AWS SDK v1, v 2 차이 크게 AWS SDK의 v1과 v2의 차이로는 저는 S3에 대한 기능만 사용하고자 하는데, v1은 모든 서비스에 대한 의존성을 받아야 하는 구조 였습니다. v2의 경우 필요한 서비스에 개별적으로 의존성을 추가할 수 있기에 보다 애플리케이션을 가볍게 가지고 갈 수 있습니다. 두번째로, 요청시에, v...