목록synchronized (2)
어흥
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cXKzpl/btrwiwUNe85/VlryY5zP1QONErH1gPoik0/img.png)
동시성 제어는 멀티 유저를 위한 프로젝트를 개발하다보면 필수로 처리해야 될 문제다. 1. 개념 우선 동시성 제어란, 동시에 실행되는 여러 개의 트랜잭션이 작업을 성공적으로 마칠 수 있도록 트랜잭션의 실행 순서를 제어하는 기법이다. 동시성 제어의 정의 Multi-user 환경을 지원하는 DB 시스템에서 여러 트랜잭션들이 성공적으로 동시에 실행될 수 있도록 지원 Multi-user 환경을 지원하는 DB 시스템에선 필수로, '병행 제어'로도 불린다 트랜잭션의 직렬화 수행 보장(순서 보장) 동시성 제어의 목적 트랜잭션의 직렬성 보장 데이터의 무결성 및 일관성 보장 동시성 제어 필요 이유 갱신 손실(Lost Update): 2개 이상의 트랜잭션이 1개의 데이터를 동시에 갱신 → 갱신 무효화 현황파악오류(Dirty..
1. 싱글톤 패턴이란? Java: Class는 ClassLoader당 1번만 인스턴스화가 되어야 한다 Spring: BeanScope를 정의하는 한가지 방법 2. 구현 방법 1) Eager Initialization [Eager Initialization] - 이른 초기화 #1. 외부에서 접근하지 못하도록 private static한 인스턴스 생성 #2. 외부에서 생성자 호출하지 못하도록 private으로 설정 #3. 인스턴스를 반환해주는 메소드는 어디서든 접근 가능하도록 public static으로 설정 public class Singleton { private static Singleton instance = new Singleton(); private Singleton() { // 생성자는 외부에서..