동시 접속 부하 테스트 경험 + 캐싱·CDN·인덱스 소급 적용 흐름으로 설명
팀 프로젝트에서 동시 접속자를 고려한 중규모 웹 서비스를 처음 만들었습니다. 200명 동시 접속 시 응답이 느려지는 상황을 시뮬레이션했고, 단일 서버에서 모든 요청을 처리하다 보니 CPU가 금방 포화됐습니다. 쿼리 최적화와 Redis 캐싱을 적용해서 응답 시간을 줄였고, 정적 파일은 CDN으로 분리했습니다. 팀에서 제 역할은 API 설계와 DB 스키마를 담당하면서 다른 팀원들이 개발할 때 인터페이스 기준을 잡아주는 것이었습니다. 데이터가 쌓이면서 일부 쿼리 응답 시간이 점점 길어지는 현상을 경험했고, 인덱스 설계와 페이지네이션을 소급해서 적용했습니다. 초기에 설계 결정을 더 신중하게 했다면 소급 비용이 줄었을 거라는 점에서 서비스 규모가 커질수록 처음 설계 결정이 나중 비용을 결정한다는 걸 배웠습니다.