1. Jmeter를 먼저 깔아줍시다.
zip 파일을 받고 압축을 풀어주도록 합니다.
2. 별도 설치 필요 없이 터미널에 접속하고 압축 푼 폴더 안의 /bin 폴더로 들어가주세요
3. ./jmeter로 실행하면 끝!
4. 쓰레드 추가하기 - 우클릭하고 add - threads(Users) - Thread Group 눌러주세요
5. 다량의 요청을 감안하고 서비스를 만들기 위해 유저 수를 1000으로 설정하고 루프 카운트를 5번으로 설정해 천 명의 유저가 5번의 요청을 보내도록 설정합니다.
6. 요청을 보내기 위한 설정을 합니다. add - sampler - http request 눌러주세요
로컬에서 테스트하기 위해 localhost로 해주시고 포트는 8080, 하단에 api 요청 주소를 입력해주세요
7. 단순 요청만 하면 어떤 요청이 처리량이 좋았는지 보이지 않습니다. report를 추가해줍니다.
Add -> Listener -> Summary Report
이제 모든 준비가 끝났습니다. redis 캐싱 적용 전과 후의 처리량을 비교해보겠습니다.
상단의 초록색 start 버튼을 누르면 테스트가 시작됩니다.
단순 조회와 캐싱 적용 후 조회 두 가지를 실행해봤을때 throughput에서 많은 차이를 보입니다. 1초마다 처리량을 나타낸 것인데 캐싱 적용 후가 약 3.5배의 차이를 보여주고 있습니다. 또한 적용 전에선 디비 조회를 동시 다발적으로 수행하기 때문에 에러가 발생하는데 캐싱 적용후엔 에러율이 0퍼센트 인 점도 주목해봐야 할 것 같습니다. 현재 조회하는 api는 많은 정보가 담겨 있지 않지만 차후에 많은 정보가 담긴 데이터를 캐싱 처리하게 된다면 몇 배가 아닌 수십배의 성능 차이를 보여줄 수 있다고 생각합니다.
'스프링 부트 > A-ger' 카테고리의 다른 글
스프링 커버링 인덱스로 페이징 성능 개선하기 (0) | 2022.02.18 |
---|---|
스프링 레디스 최근 검색어 관리하기 (0) | 2022.02.10 |
스프링 Redis로 캐시 처리하기 조회 수, 방문자 수 업데이트 (0) | 2022.02.08 |
스프링 무한스크롤 페이징 검색 처리 및 동적쿼리 적용하기 (0) | 2022.02.07 |
스프링 레디스 redis cache 프로젝트에 적용하기 (0) | 2022.02.04 |
댓글