항해 7주차 회고

Lee·2022년 2월 27일
0

항해99

목록 보기
34/50

클론 프로젝트 주차

개요

이번 주차는 실제 서비스 중인 웹사이트를 클론하여 완성시키는 것을 목표로 하는 것이었다. 따라서 어떤 기술을 사용하는지와 구현 방법에 대해 생각하는 것이 중요한 주차라고 생각한다.

진행사항

조원들과 회의한 결과 velog를 클론코딩 하기로 결정했고 범위는 로그인, 메인, 상세, 댓글 까지를 범위로 구현해 보기로 했다. 따라서 velog는 어떻게 구성되어었는지 확인한 후 이를 바탕으로 api설계 및 DB 설계를 한 후 역할 분담을 통해 좋아요, 댓글, 검색 기능을 담당하게 되었다.
내가 담당한 역할에서 가장 중요했던 기능은 검색이었다. 검색기능을 구현하는 것은 쉽지만 검색 성능을 올리는 것은 다른 영역이었기 따문에 좋아요, 댓글 기능은 기본 CRUD를 사용해 완성했고 검색기능을 위해 찾아본 결과 중에 elastic search, query를 이용한 검색을 시도해 보기로 했다.
그러나 중간 회의를 통해 검색기능을 축소하기로 하면서 최종적으로 jpa data에서 지원하는 단순 검색 기능을 사용하게 되었다.

마무리

프로젝트

이번 프로젝트는 내가 맡은 역할은 문제없이 구현했으나 검색 성능 향상을 성공하지 못한 것이 아쉬웠다. 또한 시간이 부족해 중간에 기능 축소가 발생해서 더 velog와 가까운 클론을 하지 못한 것이 아쉬운 주차였다.

고려한 기술

  • elastic search : elk 스택 중 검색을 위해 elastic search를 적용해 보기 위해 많은 자료를 조사해 보았다. RDB와 다른 용어를 사용해 용어 정리를 하고 어떤 원리로 동작하는 지 확인을 해 보았다. spring jpa data에서 elastic search를 지원하여 configuration을 설정하고 관련Repository를 상속해 간단하게 사용해 보았다. 검색 기능을 조사해 본 결과 이것을 제대로 사용하기 위해서는 query에 대해 이해하고 사용하는 것이 필수라는 것을 깨닫게 되었고 기회가 된다면 사용해 보았으면 좋겠다는 생각을 가지고 프로젝트를 마치게 되었다.
profile
발전하고 싶은 백엔드 개발자

0개의 댓글