Database

Database

DataSource 별 성능 테스트하기 & HikariCP의 성능은 왜 좋을까?

스프링부트의 공식 문서를 보면 다음과 같은 문구가 있습니다. We prefer HikariCP for its performance and concurrency. If HikariCP is available, we always choose it. 성능과 동시성의 이유로 선택할 수 있다면 항상 HikariCP를 선택한다고 합니다. 데이터베이스 커넥션 풀은 종류가 HikariCP만 있는 것은 아닙니다. Tomcat JDBC Pool, Apache Commons DBCP2 등 다양한 커넥션 풀들이 존재합니다. HikariCP는 다른 커넥션 풀들과 비교해 얼마나 빠르고, 얼마나 동시성 처리가 뛰어나길래 스프링 부트가 기본 커넥션 풀로 선택하게 되었을까요? 성능 테스트 HikariCP가 얼마나 빠른지 직접 체감해 ..

Database

DDL과 트랜잭션, 그리고 Atomic DDL

협업 프로젝트 과정에서 새로운 버전을 배포하기 위한 작업을 하던 도중이었습니다. MySQL 이벤트를 통해 스키마 변경 및 데이터 조작을 진행하고자 하였고, 다음과 같은 스크립트를 작성했습니다. delimiter && create event if not exists v_1_1_1 ON SCHEDULE AT '2023-09-21 04:00:00' DO BEGIN set autocommit = false; # DDL rename table pomodoro_room to pomodoro_study; alter table participant_code add column pomodoro_study_id bigint not null; update participant_code join pomodoro_study o..

teo_99
'Database' 카테고리의 글 목록