TIL

1. 리액티브 스트림과 배압

블로킹은 자원을 낭비한다

비동기의 한계 — 콜백과 Future

방식 한계
콜백(callback) 결과 도착 시 실행할 함수를 넘김. 여러 단계를 엮으면 깊게 중첩되어 콜백 헬 — 가독성·에러 전파가 무너짐
Future<T> 즉시 반환되지만 get()블로킹(우발적 블로킹), 지연 평가(lazy) 없음, 다중 값(0..N) 표현이 어려움, 에러 처리 빈약

리액티브 프로그래밍의 특징

리액티브 스트림 명세

배압 — request(n)

논블로킹은 곧 리액티브