성능·안정성 트레이드오프 판단 경험
캡스톤 프로젝트에서 실시간 데이터 처리 기능을 설계할 때 성능과 안정성 사이에서 선택해야 하는 지점이 여러 번 있었습니다. 예를 들어 응답 속도를 높이기 위해 캐시를 적극 쓰는 방향이 있었는데, 캐시 만료 시점에 데이터 불일치가 생길 수 있다는 안정성 이슈가 있었습니다. 결국 자주 바뀌지 않는 데이터만 캐시하고, 실시간 데이터는 캐시 없이 처리하는 방식으로 절충했습니다. 테스트 단계에서는 부하 테스트를 직접 만들어 응답 지연과 오류율을 동시에 측정했습니다. 설계 단계에서 트레이드오프를 명확히 정해두면 나중에 코드를 수정할 때 판단 기준이 생깁니다. 그 기준이 없으면 조건마다 다른 결정을 내리게 됩니다.
트레이드오프를 명시적으로 기록하면 코드 수정 시 판단 근거가 남아있어 유지보수가 쉬워집니다. 설계 단계의 결정이 나중 비용을 결정합니다.