Observable의 한계
- 작업 완료 Complete 에대한 처리 부족
- 예외 처리에 대한 아이디어 부족
이를 확장하여 한계를 극복 → Reactive Programming !
리액티브 프로그래밍의 큰 축 - 두가지
- RxJava
- MS/ Netflix 사람들이 같이 만듬
- 에릭 마이어
- Reactive Streams - Java 9
- Reactive Streams 의 핵심 인터페이스

- SubScriber → Publisher 나 너를 구독할래 : subscribe 호출
- Publisher : Subscription을 만들어 onSubscribe 호출
- Subscription : 구독 자체에 대한 정보/ Back Pressure을 처리 (속도차이)
- Subscriber → request : 요청을 할 수 도 있음 (request 메서드)
API Components
The API Consists of the following components that are required to be provied by Reactive Stream implementations:
- Publisher
- A Publisher is a provider of a potentially unbounded number of sequenced elements, publishing them according to the demand received from its Subscriber(s).
- Publisher.subscribe(Subscriber) 를 호출 하기 위해서 아래의 프로토콜 대로 메소드 호출이 이루어 져야함
- Subscriber
- Subscription
- Processor