baek-dev 님의 블로그

  • 홈
  • 태그
  • 방명록

2025/05/16 1

@Version, 레이스컨디션

@Version – 레이스컨디션 해결을 위한 낙관적 락@Version 은 JPA에서 엔티티에 버전 필드를 지정하여, 동시에 여러 트랜잭션이 같은 데이터를 수정하는 경우 충돌을 감지하고 방지하는 데 사용하는 어노테이션임.이는 낙관적 락(Optimistic Lock) 전략의 핵심 구현 방식임.1. 레이스컨디션(Race Condition)이란?여러 스레드나 트랜잭션이 동시에 같은 데이터를 읽고, 수정하거나 저장할 경우 발생하는 충돌 현상임.예상과 달리 한 쪽의 수정 내용이 덮어씌워지거나, 데이터가 꼬이는 현상이 발생함.예시:A 사용자와 B 사용자가 동시에 상품 재고(100)를 조회함A가 재고를 90으로 수정하고 저장함B도 동일하게 90으로 저장함 → A의 변경 내용이 사라짐2. 낙관적 락(Optimistic ..

카테고리 없음 2025.05.16
이전
1
다음
더보기
프로필사진

baek-dev 님의 블로그

baek-dev 님의 블로그 입니다.

  • Total (222)
    • BE (127)
      • Java (54)
      • Spring & Spring Boot (62)
      • Kotlin (11)
    • DB (14)
      • MySQL (9)
      • Elasticsearch (3)
    • FE (2)
      • React (2)
    • Infra (22)
      • OS (2)
      • Container (3)
      • Cloud (4)
      • CI-CD (1)
      • Performance (4)
    • AI (5)
    • CS (42)
    • Etc. (4)
      • 개인공부 (4)
    • Tips (4)

Tag

성능최적화, kubernetes, 낙관적락, dao, 웹소켓, 비동기, jpa, CS, Websocket, SQL, lombok, java, MySQL, ElasticSearch, springboot, Spring, redis, http, Kotlin, 동시성,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/05   »
일 월 화 수 목 금 토
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

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바