Spring Boot Deep Dive(1) - SpringApplication 초기화 과정
main함수 실행 후 SpringApplication이 생성되는 과정을 소스코드와 함께 살펴보자
main함수 실행 후 SpringApplication이 생성되는 과정을 소스코드와 함께 살펴보자
Lock(잠금)은 데이터 처리를 위해 동시성을 제어하기 위한 메커니즘으로 여러방면에서 이를 활용한다. 이 포스트에서는 어플리케이션이 취할 수 있는 Lock의 종류와 Lock으로 인해 생기는 문제점과 해결방법에 대해 작성한다.
데이터시스템에는 여러가지 문제가 생길 수 있다. 데이터베이스로의 쓰기 연산 실패, 데이터 조작 중 어플리케이션 다운, 애플리케이션과 데이터베이스 간 네트워크 통신 장애, 데이터베이스로의 동시 쓰기 등 여러가지 결함이 발생할 수 있다. 이러한 결함이 발생할 때면 데이터베이스 내 데이...
단일 리더 가반의 시스템에서는 리더가 하나만 존재하고 모든 쓰기가 해당 리더를 거쳐야 한다. 하지만 네트워크 지연 등의 이유로 리더에 접근이 불가능 해지거나 쓰기 트래픽 부하가 증가하게 된다면 쓰기 작업을 하지 못하는 상황이 발생할 수 있다. 때문에 쓰기 작업이 많은 서비스의 경우...
복제(Replication)란 네트워크로 연결된 여러 장비에 동일한 데이터의 복사본을 유지한다. 복제가 필요하거나 사용하는 이유는 다음과 같다. 지연시간 down - 지리적으로 사용자와 가깝게 유지 가용성 up - 시스템 일부에 장애가 발생해도 지속적으로 동작 읽기 처...