1. R2DBC 1-1. R2DBC 이전 전통적인 방식의 JDBC(Java Database Connectivity) 드라이버는 하나의 커넥션에 하나의 스레드를 사용하는 Thread per Connection 방식 String selectSql = "SELECT * FROM employees"; try (ResultSet resultSet = stmt.executeQuery(selectSql)) { List employees = new ArrayList(); while (resultSet.next()) { Employee emp = new Employee(); emp.setId(resultSet.getInt("emp_id")); emp.setName(resultSet.getString("name")); e..
1. 스프링 WebFlux 1-1. 프로젝트 리액터 (Project Reactor) 리액티브 스트림의 구현체 중 하나로 스프링의 에코시스템 범주에 포함된 프레임워크 리액티브 스트림 사양을 구현하고 있으므로 리액티브 스트림에서 사용하는 용어와 규칙을 그대로 사용한다. 리액터를 사용하면 애플리케이션에 리액티브 프로그래밍을 적용할 수 있고 비동기-논블로킹을 적용할 수 있다. 함수형 프로그래밍의 접근 방식을 사용해 비동기-논블로킹의 난해함을 어느 정도 해결한다. 백프레셔(BackPressure)를 사용해 시스템의 부하를 효율적으로 조절할 수 있다. 1-2. 모노(Mono)와 플럭스(Flux) 리액터는 리액티브 스트림의 Publisher 인터페이스를 구현하는 Mono와 Flux라는 두 가지 핵심 타입을 제공한다...
1. 리액티브 프로그래밍 데이터 또는 이벤트의 변경이 발생하면 이에 반응해 처리하는 프로그래밍 기법이다. 비동기 프로그래밍을 처리하는 새로운 접근 방식 데이터의 통지, 완료, 에러에 대한 처리를 옵저버 패턴에 영감을 받아 설계되었고 데이터의 손쉬운 비동기 처리를 위해 함수형 언어의 접근 방식을 사용 1-1. 리액티브 프로그래밍 이전의 비동기 프로그래밍 대부분 콜백 기반의 비동기 처리 방식을 사용했다. fetch("/api/users/me") { user -> fetch("/api/users/${user.id}/followers") { followers -> fetch("/api/users/${user.id}/likes") { likes -> fetch("/api/uesrs/${user.id}/contac..
- Total
- Today
- Yesterday
- 직접매핑
- 프로그래밍
- 프로그래밍 패러다임
- 스레드
- 중첩루프조인
- 프로세스 컴파일
- 디자인 패턴
- 대수확장성
- 함수형 프로그래밍
- 스프링 WebFlux
- 보이스코드정규형
- 메모리 계층
- 불연속할당
- 프로세스
- 프로세스와 스레드
- 정렬병합조인
- 선언형 프로그래밍
- 스프링 R2DBC
- 자바
- 네트워크 기초
- 캐시매핑
- 세컨더리인덱스
- 연관매핑
- 네트워크
- java
- 코틀린
- 인덱스최적화
- 클러스터형인덱스
- 직접연관매핑
- Design Pattern
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |