아빠는 개발자

[Aqqle] Aqqle API (상품 + 상점정보) 본문

Aqqle

[Aqqle] Aqqle API (상품 + 상점정보)

father6019 2023. 10. 29. 16:37
728x90
반응형

Api 구조

aqqle api 컨셉 - 상품을 검색했을때 상품정보와 상품을 파는 매장정보까지 같이 반환 해주는 API

 

900gle은 vector의 유사도 검색에 비중을 높였다면 Aqqle 는 캐싱에 좀 더 포커싱을 맞추는 중 

 

Aqqle Api

지금 까지 작업한 구조는 위와 같다. vector 의 유사도 검색이 들어가긴 하지만 simularity 플래그를 두어서 검색에서 빼는 조건을 추가 

상품을 검색하면 상품정보를 가져오고 내 위치 기준 5km 이내의 점포 정보를 가저온다 

LOCATION 엔 스토어 위치정보

위치정보

ITEM 엔 상품정보

상품정보

이제 테스트를 진행 해보자 근데 문제는 지금도 실행속도가 너무 빠르다. 

 

 

API 평균 : 20.64 API 평균 : 22.27 API 평균 : 21.58

평균 20이라고 치고  location 정보를 캐싱해보자 

@Cacheable(value = CacheKey.DISTANCE, key = "T(com.doo.aqqle.utils.KeyGenerator).cacheKey('getDistance', #request.distance, #request.countryCode)")

 

어제 만들어 놓은 keyGenerator 를 통해서 '메소드명', '거리', '국가코드' 3개를 key로 생성

cache key 확인

 

애매하네  전체키 삭제하고 다시 테스트

flushall

API 평균 : 15.83 API 평균 : 15.59 API 평균 : 15.0

키가 하나로 생성됐고 호출되는 쿼리도 location 정보는 호출 안되는 것을 보면 cache 는 재대로 생성된 듯하다. 

호출되는 쿼리

상품, 위치정보 두개의 정보만 테스트 해보았지만. 좀 더 다양한 데이터와 검색어에 맞는  cache 생성에 대한 작업을 추가해봐야 겠다. 

728x90
반응형

'Aqqle' 카테고리의 다른 글

[Aqqle] 회원관리  (0) 2024.08.10
[Aqqle] API - 상품  (0) 2023.10.07
[Aqqle] Aqqle 기획  (0) 2023.09.02