최신 글
기술과 일상을 함께 기록합니다.
[RxJava] 배압(Backpressure)과 리소스 관리
RxJava Flowable의 request 수요 조절과 빠른 생산자의 BUFFER·DROP·LATEST·ERROR 정책, 종료와 모니터링 기준을 설명한다.
JavaScript Symbol
Symbol로 충돌 없는 객체 키를 만들고 Symbol.for와의 차이, 키 열거·JSON 직렬화에서 빠지는 범위를 예제로 확인한다.
리액티브 프로그래밍 예외 처리
RxJava의 onError 종료 뒤 재시도와 대체 값·대체 스트림을 비교하고 재구독으로 인한 중복 부작용을 피하는 기준을 설명한다.
4. RxJava 비동기 처리
RxJava 스케줄러와 subscribeOn·observeOn의 경계, 병합 연산자의 순서 및 공유 상태 문제를 예제로 살펴본다.
[Java] Lambda Expressions(람다식)
함수형 인터페이스를 람다식으로 구현하는 방법과 표현식·블록 본문의 반환 규칙, 익명 클래스와 this 동작의 차이를 살펴본다.
3. RxJava Marble Diagram(마블 다이어그램)
마블 다이어그램의 값·완료·오류 신호를 읽고 filter, 오류 대체, zip 사례에서 시간축과 출력 순서를 해석하는 방법을 설명한다.
Scope 연산자 let, const
JavaScript var·let·const의 스코프와 TDZ, const의 재할당 제한 및 반복문 클로저에서 값이 달라지는 이유를 예제로 설명한다.
2. Reactive Streams
Reactive Streams의 네 인터페이스와 request 기반 수요 조절, 종료·취소 규칙을 RxJava Flowable 예제로 설명한다.
1. RxJava 개념
RxJava 2의 Flowable·Observable, 연산자, 스케줄러와 Cold·Hot 소스의 실행 차이를 예제로 살펴본다.
0. Reactive System(리액티브 시스템)
리액티브 시스템의 응답성·회복성·탄력성·메시지 기반 설계를 주문 처리 사례와 운영 지표로 풀어 본다.
[병렬프로그래밍] 6. 작업실행
웹 서버 요청 처리 방식을 단일 스레드, 요청별 스레드, Executor 풀로 비교하고 작업 취소·완료와 자원 한계를 살펴본다.
volatile 키워드
volatile의 가시성·순서 보장과 복합 연산의 원자성이 다른 문제인 이유를 예제로 살펴본다.