TIL - 사용자 요청부터 DB 반영까지 순서

su·2023년 7월 28일
0

TIL

목록 보기
53/93
post-thumbnail

사용자의 요청부터 DB 반영까지의 순서

사용자의 요청으로부터 DB에 반영되기까지의 과정이다.

  1. 사용자가 요청을 보낸다.
  2. 쓰레드비 영속상태의 new Entity가 생성된다.
  3. 쓰레드에서 persist를 날리면 1차 캐시로 이동한다.
  4. 1차 캐시(영속성 컨텍스트)에서 Entity가 생성된다.
  5. 1차 캐시에서 flush를 날리면 DB 트랜잭션으로 이동한다.
  6. DB 트랜잭션에서 쿼리가 등록된다.
  7. DB 트랜잭션에서 commit을 날리면 DB 원본으로 이동한다.
  8. DB 원본에서 commit에 대한 작업을 마치면 저장된다.

이동하는 순서는

  • 요청 → 쓰레드 → 1차 캐시 → DB 트랜잭션 → DB 원본

이다.

  • 1차 캐시에서 detached가 되면 다시 쓰레드로 돌아간다.
  • 1차 캐시에는 쓰기 지연 저장소가 있어 쿼리문들이 모여있다.
  • DB 트랜잭션에서 commit을 해야 DB에 실제로 반영된다.
profile
(❁´◡`❁)

0개의 댓글