해결된 질문
작성
·
126
·
수정됨
1
안녕하세요 강사님!
강사님의 백엔드 애플리케이션 성능 테스트하기와 백엔드 애플리케이션 성능 개선하기 - 기초편 강의를 듣고 실제 프로젝트에서 제가 만든 API에 대해 성능 테스트를 진행하고 성능 개선을 해봤습니다. 아래는 제가 과정을 진행하면서 겪었던 이슈와 고민을 블로그 글로 적었습니다.
우선 강사님 덕분에 성능 개선을 잘 할 수 있어서 감사했습니다.
블로그 글을 쓰면서 든 생각은 여기서 더 개선 시킬점은 없을까? 좀 더 고민 해볼만한 부분은 없을까? 내가 정말 이 기술들을 알고 적용한게 맞는걸까? 라는 생각이 들었습니다.
개발에 정답은 없지만 그래도 좋은 방향은 있다고 생각해서 최근에 제가 쓴 글을 다시 보면서 어떤 부분에 대해 고민하면 좋고 고치면 좋을까 라는 생각을 하고 있습니다.
혹시 강사님께서 제 글을 보시고 만약 면접관이시라면 어떤식으로 질문이 들어올 수 있을지 특히 꼬리 질문에 대해 얘기를 해주실 수 있을까요 해주신 내용을 바탕으로 깊게 고민 해보고 나중에 면접 대비도 하고 싶습니다.
답변 1
1
감바스님 안녕하세요~
우선 강의 잘 들어주시고, 블로그 글에도 강의 내용 잘 작용해보셨네요. ㅎㅎ
감사합니다.
APM 가지 적용해보시고 강의에서 훨씬 더 확장된 내용까지 고민해보신 것 같습니다.
몇가지 질문으로 들어올만한 내용을 제가 적어봤는데, 한번 참고해보시고 학습이 도움이 되셨으면 좋겠습니다. 🙂
평균 응답 시간을 0.1초로 설정하셨던데, 이 목표를 설정한 근거가 무엇인가요? 사용자 경험(UX)이나 비즈니스 요구사항 측면에서 어떤 데이터를 참고하셨나요?
comment: 이 부분은 현업에 계신 멘토님께 조언을 들었다고 했는데, UX 관점에서 고민해보시면 좋을 것 같습니다. 모든 API의 목표가 0.1초일 필요가 있는지? 같은 고민이요. 상황에 따라 일부 기능은 긴 응답 시간이 걸리게 두거나 실행 자체를 차단하는 경우도 있을 것 같습니다. (참고)
쿼리 튜닝 과정에서 Generated Column과 Full-Text Index를 활용하셨는데, 이 두 가지 방식을 선택하신 기준이 무엇이었나요?
꼬리질문: Full-Text Index가 유리한 상황과 불리한 상황은 각각 어떤 것들이 있을까요? 또한, Generated Column을 실제 운영 환경에서 장기적으로 사용할 때의 한계는 무엇이라고 보시나요?
만약 Redis가 다운되는 상황이 발생한다면, 이를 대비한 장애 복구 계획은 어떻게 준비하셨나요? Redis 장애 시 DB 부하를 어떻게 제어하실 건가요?
글로 적어주신 내용을 진행하면서 분명 시행착오도 있었을 것 같은데, 만약 지금 글로 적은 방법들을 모두 활용했는데도 목표한 성능을 맞추지 못했다면, 무엇을 더 해보려고 했을 것 같은가요?
일단 생각난건 이정도네요. ㅎㅎ
전반적으로 봤을 때 충분히 성능 테스트 -> 개선 과정에서 CS 지식을 근거로 잘 정리하신 것 같다고 생각됩니다. 취업 준비중이신 것 같은데 잘 준비하셔서 원하시는 곳에 취업 하셨으면 좋겠습니다.
혹시 또 궁금한 내용 있으면 추가로 질문 남겨주세요~
감사합니다.
감사합니다 강사님!
얘기해주신 내용 바탕으로 좀 더 고민해보고 적용해보겠습니다!