실무이야기(4)
-
원격PC에서 AWS 배포 프로세스 개선(AWS, gdown 활용)
원격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 다운로드에서 굉장히 많은 시간이 소..
2024.10.27 -
웹사이트 속도 개선기(CDN,gzip, JS CSS Minify)
웹사이트 속도 개선기(CDN,gzip, JS CSS Minify) 회사에서 구축 이후 해외접속 사용자들이 메인페이지부터 느리다는 문의를 받았습니다.사이트가 소개페이지가 많다 보니 고용량 이미지(이미지 1개당 약 2~3MB)가 페이지에 많게는 10장이 넘어가고, 메인페이지는 크롬 Network로 확인했을 때 영상도 있다 보니 50MB가 넘어가고 있었습니다.이를 개선하고자 퀄리티는 유지하면서 여러 방법을 사용했는데 그 방법에 대해서 소개시켜드리고자 합니다. ※ 해당 사이트의 서버는 AWS를 사용중에 있습니다. 단, 서울리전의 서버 1대만 사용했습니다.1. CDN 서비스 적용CloudFront를 이용해 이미지, 영상 등의 정적파일에 대해서 CDN을 적용했습니다.서버는 서울에 있지만 그 외 정적 리소스는 CDN..
2024.10.27 -
Tomcat catalina.out log 분리하기 (feat. logrotate.d, SELinux)
Tomcat catalina.out log 분리하기 (feat. logrotate.d, SELinux) 내가 맡은 프로젝트의 운영서버에 catalina.out 파일의 크기가 어마어마하게 크다. 당장은 문제가 없겠지만 차후 유지보수 log 파일 열어볼 때도 수분이 걸리고 찾을 때 읽은 프로그램이 튕길 수 있기 때문에 이참에 내가 맡고 있는 프로젝트의 log 분리를 하겠다고 말한 뒤 분리했다. (이런건 제발 오픈할때 제발 Default로 해주기를..) (이런 파일 다운로드 받기도 힘들고 열기도 힘들고 찾기도 힘들다.) 1. Cron상태 확인(운영중인 서버에는 anacron이 설치되어 있는지 확인하기) // crond이 돌고 있는 상태를 확인한다. service crond status\ // anacronta..
2023.10.01 -
쿼리 튜닝(프로시저, 임시테이블, Index Range Scan)
쿼리 튜닝(프로시저, 임시테이블, Index Range Scan) 문제점 해외에서 서비스 하고 있는 홈페이지가 있었습니다. 이번에 속도가 너무 느리다고 해외 현지에서 컴플레인이 걸렸는데요. 처음에는 물리적으로 네트워크 시간이 긴줄 알았지만 해외 DB를 Dump해봐 개발서버에 적용하고 SQL을 실행했는데 생각보다 많은 시간이 걸렸습니다. 내부 개발서버에서도 많이 느렸기 때문에 최대한 SQL 튜닝을 팀원과 함께 진행을 해 보았습니다. HTTP/2(HTTP 2.0) 프로토콜이 적용된 홈페이지 입니다. MariaDB 10.3DB를 사용하고 있습니다. 문제 파악 후 해결 방법 20s 이상이 걸리는 요청에는 3개의 프로시저와 3개의 SQL을 중점적으로 SQL을 파악하고 팀원들과 함께 어떻게 개선해 나갈지 토론을 하..
2022.12.09