본문 바로가기
Spring

[Spring] 몽고디비 read 개선 방향 - 2

by cheery7272 2022. 2. 17.

https://cheery7272.tistory.com/364

전에 리드 개선을 위해서 고민을 했었던 문제에 대해서 간략하게 적어놓은 자료입니다.

 

전에 적었던 내용에 대해 간략하게 설명을 하자면

현재의 문제 의문

현재 몽고 디비의 Document이다.

각 게시글을 조회를 하기 위해서 게시글 마다 Mysql과의 커넥션을 통해 유저의 프로필 정보를 가져오는 구조로

Mysql과의 커넥션 때문에 과연 몽고의 리드 연산이 빠르다는 장점이 사라지는 것일까?

 

데이터 준비

우선 데이터는 3200개 정도로 적지만

3번 PK를 가진 유저가 1~31번까지 총 32명과의 팔로워를 진행했고

1번부터 31번까지의 유저들은 각각 약 100개씩의 게시글을 가지고 있다.

 

조회할 로직으로는 3번 유저의 팔로워들을 조회한 후 그들의 게시글을 모두 최신순으로 가져오는 테스트를 진행할 것이다.

 

변경

 

JMETER

테스트 코드를 작성할려고 했지만 JMTER라는 API의 로드 시간을 측정할 수 있는 프로그램이 있다고 해서

한번 사용해보았다.

 

변경전

변경후

 

결과

데이터가 부족해서 그런지 로드시간의 큰 차이는 없어보이지만 그래도 조금이나마 시간이 줄어들었다.

하지만 이것도 정확한지는 아직 모르겠다....

우선은 앞으로 좀 더 효율적인 로직을 구성할 수 있도록 생각을 많이 해봐야겠다.

댓글