전공생 노트

Spring batch sql

프로젝트에서 지도와 관련된 부스 정보를 저장할 때, 각 부스가 운영되는 일차에 해당하는 날짜 정보를 별도의 매핑 테이블에 저장할 필요가 있었습니다. 기존 구현 방식의 SQL문을 살펴보니, 하나의 부스를 저장할 때 운영 날짜가 N개 있다면, 부스 정보를 저장하는 1개의 Insert SQL 이외에도 운영 날짜와 부스를 연결하는 매핑 데이터를 저장하는...

서비스 운영 과정에서 AWS 인프라 성장기

애플리케이션 개발 초기에 AWS 클라우드를 이용해 처음 서비스를 배포했던 시점부터 현재의 인프라 구조에 이르기까지 어떤 고민과 이유로 인프라를 발전시켜 왔는지 단계적으로 설명하고, 최종적으로 구축된 AWS 아키텍처를 소개하겠습니다. 1. 초보 개발자의 인프라 구축 처음 서비스를 배포할 때, 지식이 부족하여 가장 쉽게 접근할 수 있는 ...

부하테스트 - 500명 가상 사용자 테스트 (3)

이전 글에서는 중단점 테스트를 통해 서버의 한계 지점이 동시 접속자 500명임을 확인했습니다. 이번 글에서는 500명 가상 사용자 환경에서의 자원 사용량을 분석하고 자원이 적절하게 사용되고 있는지, 혹은 성능이 현재가 최선의 상태인지 확인해 보고 개선해보겠습니다. 1. 초기 환경에 대한 부하 테스트 가장 먼저 저번 빌드 파일에서 변경...

부하테스트 시나리오 작성 및 부하테스트 진행 (2)

1. 들어가며.. 예상치 못한 순간에 찾아온 트래픽 폭주는 개발자의 악몽과도 같습니다. 이전에 런칭했던 서비스는 일정에 쫓겨 부하테스트 없이 급하게 배포했고, 사용자가 몰렸을 때 속수무책으로 당할 수밖에 없었습니다. "다시는 같은 실수를 반복하지 말자." 새롭게 준비 중인 서비스에는 사용자 행동 패턴과 Google 애널리틱스를 바탕으로 부하테스트...

파일 업로드 (Stream, MultipartFile, Pre-signed url, Multipart Upload)

진행했던 프로젝트에서 파일 업로드를 발전시킨 과정에 대해서 써보려고 합니다. 파일은 어떻게 전송되고, Spring Boot에서 어떻게 받아와서 어떤 식으로 저장하는지에 대해서 고려했던 점들과 Locust와 Prometheus + Grafana를 이용하여 파일 업로드 기능의 성능을 모니터링 해보려고 합니다. 1. 파일이 Client에서 서버...

© HeechanN. Some rights reserved.