인프런 커뮤니티 질문&답변

BeakGwa님의 프로필 이미지

작성한 질문수

백엔드 애플리케이션 성능 테스트하기

파라미터 활용하여 테스트하기

파라미터 활용하여 테스트 하는 부분 질문 있습니다.

24.09.29 14:33 작성

·

37

1

안녕하세요.

몇가지 질문사항이 있어 문의 드립니다.

 

파라미터 테스트를 .csv 파일을 사용하여 로드하여 사용하는 것을 예제로 들어주셨습니다.

 

  1. 이 때, body에 적용되는 값은 .csv 파일의 랜덤한 값이 들어가는 것 같은데, 테스트에서 이렇게 값을 의도하는 이유가 있을까요? 당장 드는 생각은, (동일 데이터를 반복 테스트 하였을때, 캐싱이 되어잇다면, 확실한 성능 테스트 확인이 불가능 할 수 있다) 정도가 생각이 듭니다.

  2. 어느정도의 데이터를 .csv파일에 등록해서 테스트 하는 것이 좋을까요? 당연히 테스트 하는 케이스별로 다르겠지만, 테스트 하실때 적용하시는 간단한 예시를 들어주시면 좋을 것 같습니다. EX) 요청 건수의 ??% 정도

답변 2

1

이준형(Foo)님의 프로필 이미지
이준형(Foo)
지식공유자

2024. 10. 01. 00:14

BeakGwa님 안녕하세요~

인프런 AI 인턴이 잘 답변해준 것 같은데, 1번은 말씀하신 이유가 맞습니다. 동일한 값으로만 요청했을 때 캐싱으로 인해 테스트가 제대로 되지 않을 우려가 있어서 여러개 중 랜덤한 값을 사용한겁니다.

2번의 "어느정도의 데이터"를 사용해야할지는 사실 정해진 내용은 없습니다. 다만 강의에서 이야기드린 것처럼 최대한 "실제와 유사한 형태의 데이터"로 요청이 이루어질 수 있도록 만들기 위해 노력합니다. 필요하다면 스크립트를 작성해서 랜덤한 데이터를 매 요청마다 만들어내서 요청하기도 합니다.

 

그리고 때론 캐시를 걸고, 캐시가 성능을 끌어올려주는지 테스트해보기도 하는데, 이럴때는 오히려 일부러 이미 요청된 데이터를 활용하기도 합니다. 이럴 때는 실제 트래픽 중 전체 요청 중 10% 정도가 캐시에 걸릴 것으로 기대된다면, 테스트 데이터 역시 10% 정도는 중복된 요청이 오도록 테스트 데이터를 조절할 필요가 있습니다.

 

궁금한 내용에 대한 답변이 됐을까요?

또 궁금한 내용 있으면 질문 남겨주세요.

감사합니다!

0

인프런 AI 인턴님의 프로필 이미지

2024. 09. 29. 14:36

안녕하세요, 인프런 AI 인턴입니다. BeakGwa님.

파라미터를 활용하여 테스트하는 부분에 대해 질문해주셨네요. 관련 질문과 답변을 제공해드리겠습니다.

  1. 랜덤 값 사용 이유:
  • .csv 파일에서 랜덤하게 값을 사용하는 것은 데이터의 캐싱을 피하기 위해서 입니다. 동일한 데이터를 반복적으로 테스트하는 경우, 캐싱 메커니즘이 작동되어 정확한 성능 테스트를 방해할 수 있습니다. 따라서 랜덤 값을 사용함으로써 실제 서비스 환경과 유사한 다이나믹한 상황을 시뮬레이션할 수 있게 됩니다.
  1. 적절한 데이터 크기:
  • 테스트에 사용할 .csv 파일의 데이터 크기와 관련해서는 명확한 기준이 있진 않습니다. 일반적으로는 테스트하려는 시나리오별로 다르지만, 요청 건수의 10-20% 정도의 데이터를 저장해서 사용하기도 합니다. 예를 들어, 1000번의 요청을 테스트하려면 적어도 100-200개의 다양한 데이터를 포함하는 .csv 파일을 사용할 수 있습니다.

추가적으로, 비슷한 질문을 다루고 있는 게시물도 함께 참고하시면 도움이 될 것 같습니다:

이 링크들을 통해 다양한 상황에서의 성능 테스트 방법에 대한 인사이트를 얻으실 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

BeakGwa님의 프로필 이미지

작성한 질문수

질문하기