개요 MySQL 데이터베이스의 Master-Slave 레플리케이션은, 조회만 발생하는 트랜잭션은 복수개의 Slave 노드로, 조회 뿐만 아니라 데이터베이스 변경점이 발생하는 트랜잭션은 1개의 Master 노드로 요청되어야 한다. 이번 글에서는 Spring Boot, JPA 환경에서 커넥션 풀을 read-write, read-only로 분리하는 방법을 설명하고자 한다. 특히, Amazon Aurora MySQL의 Single-Master 레플리케이션을 사용할 경우, 최대 15개의 레플리카 인스턴스를 운영할 수 있는데 애플리케이션 레벨에서 read-only 트랜잭션을 레플리카 엔드포인트를 바라보도록 설정하면 조회 성능을 크게 향상시킬 수 있다. 기본 흐름 어노테이션에 따라 커넥션 풀을 분기해주는 클래스를 직..
개요 Spring Boot, JPA 기반 프로젝트에서 Hibernate L2 Cache를 활성화하는 방법을 간단히 정리하였다. Hibernate L1 Cache 특징 L1 캐시는 하나의 Hibernate Session 안에서만 유효하다. 다른 세션끼리는 캐시를 공유하지 않는다. (L2 캐시 전체 세션끼리 같은 캐시를 공유한다.) L1 캐시는 기본 설정이 활성화되어 있으며 비활성화가 불가능하다. (L2 캐시는 기본 설정이 비활성화되어 있으며 활성화가 가능하다.) Hibernate L2 Cache 특징 현재 애플리케이션에 존재하는 전체 Hibernate Session이 동일한 캐시를 공유한다. (SessionFactory를 통해 가능하다.) ID로 조회한 엔티티의 조회 결과만 캐시에 저장된다. 이를 통해 R..
- Total
- Today
- Yesterday
- Kendo UI Web Grid
- 자전거
- JHipster
- graylog
- jpa
- kotlin
- MySQL
- JavaScript
- bootstrap
- Tomcat
- Eclipse
- Kendo UI
- 구동계
- Spring MVC 3
- Docker
- 로드바이크
- maven
- DynamoDB
- chrome
- 알뜰폰
- java
- node.js
- 로드 바이크
- jstl
- Spring Boot
- spring
- 평속
- jsp
- 태그를 입력해 주세요.
- CentOS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |