일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 보험금 지급거절
- 금감원
- 금융감독원
- 백준 알고리즘
- 해시
- 금융감독원 민원신청
- Java
- 매일메일
- 겜스고
- 코드스테이츠 백엔드 부트캠프 합격
- 코드스테이츠 백엔드 교육과정
- 백내장 다초점렌즈 삽입술
- 팬텀 리드
- 금감원 백내장 민원
- css
- MVCC
- 백내장 금감원
- 코드스테이츠 백엔드 후기
- 백내장
- HLB
- 자바
- 코테 합격후기
- Code States 백엔드 합격 후기
- Spring
- Gamsgo
- 백엔드
- CodeState 후기
- 코드 스테이츠 백엔드 교육과정
- 에이치엘비
- 메서드
- Today
- Total
목록매일메일 (12)
개발하는 동그리
SSR(Server Side Rendering) 이란? SSR(Server Side Rendering) 방식은 서버에서 완성된 정적 HTML을 클라이언트에 내려주는 방식입니다. 클라이언트 측에서는 해당 HTML을 파싱만 하여 화면을 그리게 됩니다.반면, CSR(Client Side Rendering) 방식은 브라우저가 서버로부터 비어있는 뼈대 HTML을 받아온 후, 필요한 자바스크립트 번들을 다운로드하고 번들을 실행하여 동적으로 컨텐츠를 채우는 방식입니다.Next.js에서는, SSR 방식으로 정적인 html을 내려주어 초기 화면을 빠르게 렌더한 이후, hydration을 통해 이벤트 리스너 부착 등의 자바스크립트 작업을 수행하여 정적인 화면을 동적으로 전환하는 작업을 수행하기도 합니다.SSR의 장점은 무..
Next-Key Lock이란 무엇인가요? 넥스트키 락은 레코드 락과 갭락을 결합한 형태로, 특정 인덱스 레코드와 그 주변의 갭을 동시에 잠그는 락입니다. 이를 통해 레코드 자체의 변경과 함께 그 주변 공간의 변경도 동시에 제어할 수 있습니다.넥스트키 락은 특정 레코드와 그 주변 공간을 잠그기 때문에, 다른 트랜잭션이 새로운 레코드를 삽입하여 팬텀 리드를 발생시키는 것을 방지합니다. orders_id | orders_amount----------|---------------1 | 1002 | 2003 | 300// 트랜잭션 A 시작START TRANSACTION;// 트랜잭션 A amount = 200인 orders_id = 2 레코드에 대한 레코드 락과 1-2,..
Gap Lock이란 무엇인가요? 갭 락은 특정 인덱스 값 사이의 공간을 잠그는 락입니다. 기존 레코드 간의 간격을 보호하여 새로운 레코드의 삽입을 방지합니다. 갭 락은 범위 내에 특정 레코드가 존재하지 않을 때 적용됩니다. 트랜잭션이 특정 범위 내에서 데이터의 삽입을 막아 팬텀 읽기(Phantom Read) 현상을 방지합니다. 예를 들어, 인덱스 값 10과 20 사이의 갭을 잠그면 이 범위 내에 새로운 레코드 15를 추가할 수 없습니다.// id 1, 3, 5가 저장된 orders 테이블// 트랜잭션 A 시작START TRANSACTION;// 트랜잭션 A 1-3과 3-5 사이의 갭과 3 레코드 락 설정(넥스트키 락)SELECT * FROM orders WHERE orders_id BETWEEN 2 AN..
Phantom Read란 무엇인가요?Phantom Read는 트랜잭션이 동일한 조건의 쿼리를 반복 실행할 때, 나중에 실행된 쿼리에서 처음에는 존재하지 않았던 새로운 행이 나타나는 현상입니다. 이는 주로 읽기 일관성(Read Consistency) 을 유지하는 과정에서 발생할 수 있는 문제로, 데이터 삽입이나 삭제가 다른 트랜잭션에 의해 이루어질 때 발생합니다. -- 트랜잭션 A 시작START TRANSACTION;-- 트랜잭션 A 첫 번째 조회SELECT * FROM orders WHERE amount > 150;-- 트랜잭션 B 시작START TRANSACTION;-- 트랜잭션 B 새로운 행 삽입INSERT INTO orders (customer_id, amount) VALUES (4, 250);-..