kohyunsil / Algo_camping

MIT License
2 stars 3 forks source link

[feature/server1] SearchList Page #31

Closed SeyoungKo closed 3 years ago

SeyoungKo commented 3 years ago

세부 구현 사항

  1. 우선순위에 따라 검색 결과 리스트 노출

    • 가장 정확도가 높은 캠핑장
    • 지역
    • 사용자 입력 태그
  2. 조회순, 등록순 정렬

    • 조회순 (readcount) 정렬
    • 등록순 (modified_date) 정렬
  3. 서버 사이드 구조에서 클라이언트 사이드 구조로 변경

    • 검색 결과 리스트를 빠르게 조회하기 위해 비동기 방식으로 변경

추후 개선 사항

  1. 이미지 로딩 속도 개선을 위해 이미지 lazy mode 적용
  2. ORM 검색 쿼리 개선 - 일부 검색어에 대해 스펙대로 동작되지 않음
  3. 인기순 정렬 (현재 조회순과 동일하게 작성되어 있으나 추후 가중치 작업 진행 시 반영할 예정)
  4. 클라이언트 사이드 구조 변경으로 인한 HTML 렌더링 시간 간격과 json 로드 시간 간격 차이 줄이기
    • 데이터 로드까지 '로딩 중' 알림 팝업 추가 혹은 기타 방법 모색
SeyoungKo commented 3 years ago

기술적인 부분이나 궁금하신 점 있으면 말씀 부탁드립니다!

SeyoungKo commented 3 years ago

07.04 개선 사항

ORM 검색 쿼리 수정 완료

  1. main query main_query = session_.query(model_place).filter(model_place.content_id.in_(sub_query)).order_by( case( (model_place.place_name.contains(place_keyword), 1), (model_place.addr.contains(area), 2), else_=3 ) ).limit(Config.LIMIT).all()