대규모는 아니지만 분산 개념을 직접 구현해본 경험
솔직히 말하면 진짜 대규모 시스템을 운영한 경험은 없습니다. 다만 학교 졸업 프로젝트에서 서비스 3개를 분리하여 메시지 큐로 연결하는 구조를 직접 구현해보았습니다.
처음에는 단일 서버로 구성하였으나, 트래픽을 시뮬레이션할 때 이미지 업로드 기능 하나 때문에 전체 응답이 느려지는 문제가 발생하였습니다. 이미지 처리를 별도 서비스로 분리하고 큐로 넘기는 방식으로 변경하였습니다. 구조를 변경한 후에는 응답 속도가 체감상 빨라졌습니다.
운영하면서 가장 어려웠던 것은 어디서 에러가 발생했는지 추적하는 것이었습니다. 서비스가 분리되면서 로그가 흩어져 원인 찾는 데 시간이 많이 소요되었습니다. 중앙 로그 수집 구조를 나중에 추가하였는데, 처음부터 설계에 포함시켰어야 했다는 것을 배웠습니다. 실제 대규모 환경과는 거리가 있지만, 이 경험이 분산 구조에 대해 직접 부딪혀본 시작점이었습니다.