리뷰메이트

이전 노션 블로그의 소나큐브와 Jacoco로 코드를 깨끗하게 유지하기 (2023.09.07)로부터 마이그레이션된 글입니다. ⚙️ Setup EC2 서버에 SonarQube 설치 및 설정 1. 메모리 증가를 위한 Swap 설정 파일 생성 및 설치 touch ~/swapfile sudo fallocate -l 2G ~/swapfile sudo chmod 600 ~/swapfile sudo mkswap ~/swapfile sudo swapon ~/swapfile sudo yum install java-17-amazon-corretto-headless 아래 파일들을 열어서 가장 아래에 추가 /etc/fstab ~/swapfile swap swap defaults 0 0 /etc/sysctl.conf vm.max..
이전 노션 블로그의 Transaction 이란? (2023.08.11)로부터 마이그레이션된 글입니다. 저는 늘 Swagger의 자동화와 간단한 어노테이션을 통해 빠른 API 문서 배포만 해봤습니다. 빠르게 작업가능하다는 장점은 있었지만, 모든 요청을 Postman으로 테스트하는 과정에서 실수가 있을 수 밖에 없었고 Swagger의 자동 생성 문서가 친절한 편은 아니기에 읽는 사람마다 다르게 이해되는 경우가 있었습니다. 따라서 프론트에서 API를 연결하는 과정에서 실수가 자주 발생하거나, 오류가 발생하더라도 저에게 직접 물어보는 경우가 많았습니다. API 문서를 작성한 의의가 사라져버리는 일이 많았습니다… 😔 이번 리뷰메이트 프로젝트에서는 제한된 시간 내에 FE와 AI 모두가 사용할 서버를 만들어야 하므로..
이전 노션 블로그의 Swagger에서 MultipartFile과 DTO 한 번에 받는 @RequestPart 요청을 실행할 수 있도록 만들기 (2023.08.29)로부터 마이그레이션된 글입니다. 번거롭게 요청을 요청할 필요 없이 하나의 요청에서 파일과 데이터를 전송할 수 있도록 컨트롤러를 힘들게 구현했더니, 프론트에서 사용할 때 요청이 발생하고 Swagger에서 제대로 동작하지 않았다. 본 포스팅은 노력이 헛되지 않도록 문제를 하나씩 고쳐나간 기록들이다. 1. Request body의 Content-type이 올바르지 않음 문제 상황 MultipartFile와 DTO를 한 번에 받을 수 있는 요청을 만들때, 다른 여타 요청들처럼 @PostMapping에 URL만 설정하면 Swagger의 Request b..
이전 Velog의 대용량 데이터베이스의 조회 성능을 개선해보자 (2) : 인덱스 튜닝 (2023.11.12) 로부터 마이그레이션된 글입니다. Github main repo / Github server repo 동기 1편의 카테고리별 리뷰 조회를 시작으로 500ms가 넘어가는 요청들을 위주로 Cardinality/Selectivity를 고려하여 인덱스를 생성했다. 하지만 1편까지는 진짜 대용량 데이터베이스는 아니였다. 2편부터 여기어때컴퍼니 벤처 프로젝트인만큼 여기어때 홍보자료에 있는 데이터 규모에서 성능을 측정해보고 필요하다면 개선까지 진행해보자. 기존 테스트 데이터 스케일 여행상품: 30 (각 카테고리 10개씩, 숙소, 식당, 렌터카) 예약: 540,000 (카테고리 별 180,000) - 여행상품 마..
이전 Velog의 대용량 데이터베이스의 조회 성능을 개선해보자 (1) : 인덱스 적용 (2023.10.27) 로부터 마이그레이션된 글입니다. Github main repo / Github server repo 동기 지난 번에 다양한 JPA 문제를 해결하고 비효율적으로 생성되는 쿼리를 최적화해 전체적인 서버 성능이 대폭 향상되었다. 하지만 리뷰 조회 API의 일부 요청의 경우 대폭 향상되었음에도 만족스러운 쿼리 처리 시간에 도달하지 못했다. 다양한 정렬과 필터링을 지원하는 조회 쿼리인만큼 대량의 데이터를 조건절, 정렬 적용하는데 많은 비용이 들고, 특히 리뷰의 분석 결과 중 '청결' 속성이 포함된 리뷰들이나 리뷰의 분석 결과 중 '청결' 속성의 '먼지' 키워드가 포함된 리뷰들과 같이 review 테이블과..
sckwon770
'리뷰메이트' 태그의 글 목록