MySQL

DB

DB Connection Pool (커넥션 풀) 개념부터 적절한 설정 방법까지 (feat. HikariCP & MySQL)

개인 프로젝트 및 팀프로젝트를 하던 중 백엔드 서버와 DB 서버가 연결이 끊기거나 타임 아웃이 나는 경우가 종종 생겼다. 머리 한편으로는 커넥션풀의 문제겠거니하고 설정들에서 풀을 늘려주거나 시간을 늘리거나 하는등 임시방편으로 해결을 하였는데, 이번 기회로 커넥션풀의 개념과 설정 방법까지 정리해 보려고 한다. 해당 게시물을 유튜브 쉬운코드 님의 영상을 보고 정리한 글입니다. 들어가기 앞서 백엔드 서버와 DB의 통신은 네트워크를 공부해본 개발자라면 알고있는 TCP 연결을 기반으로 하고있다. 커넥션 open(연결)시에는 3-way handshaking이 일어나고, close(끊음)시엔 4-way handshaking을 한다. 즉 커넥션을 맺고, 끊는 과정에서 복잡한 일이 일어나고 비용도 크다는 의미이다. 이말..

프로젝트

[SpringBoot] 검색 서비스를 위한 성능 향상 개선기 (MySQL Like문 부터 SQL FullText, QueryDSL NoOffset, ElasticSearch까지)

소상공인들의 당일 폐기 예정 식품의 할인 정보 공유 및 구매/판매 서비스 소상 공인들의 당일 폐기 예정 식품의 할인 정보 공유 및 구매/판매 서비스를 팀 프로젝트로 진행 중이다. 팀 프로젝트를 수행하던 중, 나는 전반적인 업체 관리 및 검색 파트를 맡게 되었다. 아래 내용은 검색을 위한 기능을 구현하던 중 성능 개선을 위해 내가 시도했던 방법들을 적어본다! 목차 0. 들어가기 앞서 1. Like문(No QueryDSL) VS Full Text 쿼리 2. Like문(feat. QueryDSL) VS Full Text 쿼리 3. 우리 서비스에서 MySQL Index 적용시 문제점 4. ElasticSearch 도입 우선 들어가기 앞서서, 우리 서비스의 검색 관련 시스템에 간략하게 소개해주려고 한다. 간단하게..

맹수호빵
'MySQL' 태그의 글 목록