2024. 10. 27. 16:06ㆍ실무이야기
원격PC에서 AWS 배포 프로세스 개선(AWS, gdown 활용)
유지보수를 담당하는 사이트가 있었는데 배포 방식에 대해서 문제라고 생각되는 부분이 있었습니다.
원격 배포 프로세스가 Google Drive에 .war 파일을 업로드 한 뒤, 원격PC에서 Download 후 원격PC에서 SFTP로 AWS서버에 파일을 Upload하는 방식이였는데요.
아래 프로세스를 보면 원격PC에서 Google Drive에 있는 파일을 Download할 때 시간이 굉장히 오래걸렸습니다.
이미지가 많은 사이트이다 보니 .war파일용량도 2GB가까웠는데요. Download 시간만 약 20~30분정도 걸렸습니다.
개선 전 배포 프로세스
개선전의 배포 프로세스 입니다. Google Drive -> 원격PC 다운로드에서 굉장히 많은 시간이 소요되었습니다.
원격PC에서 속도제한이 걸린 이유는 자세히는 모르겠지만 원격PC에 Download는 시간이 오래걸린다는 사실이였습니다.
개선 후 배포 프로세스
Google Drive에 파일을 Upload하는건 동일하지만 AWS Server에서 직접 Google Drive에 있는 File을 Download 했습니다.
속도는 약 40~70MB/s정도로 빠른 속도였으며 약 1분 이내로 Download가 완료되었습니다.
개선 방법
* gdown library를 이용.
gdown을 이용해서 Google Drive에 있는 File을 AWC EC2에 직접 Download를 하게 되었습니다.
또한 매번 gdown명령어를 치는게 귀찮았기에 Shell Script를 만들어 좀 더 간편하게 Download를 진행했습니다.
# gdown.sh
if [ "$#" -ne 1 ]; then
exit 1
fi
FILE_ID=$1
gdown https://drive.google.com/uc?id=$FILE_ID
개선 후기
재기동까지의 시간이 기존 평균 30분이라는것을 감안하면 지금은 5분 이내로 완료가 가능합니다.
일주일에 최소 1~2번은 배포하는 사이트였기 때문에 배포시간이 매우 절약이 되어 그만큼 다른 일을 할 수 있다는 장점이 되었습니다.
'실무이야기' 카테고리의 다른 글
웹사이트 속도 개선기(CDN,gzip, JS CSS Minify) (0) | 2024.10.27 |
---|---|
Tomcat catalina.out log 분리하기 (feat. logrotate.d, SELinux) (0) | 2023.10.01 |
쿼리 튜닝(프로시저, 임시테이블, Index Range Scan) (1) | 2022.12.09 |