차가운 Observable이란?
- 옵서버가 subscribe() 함수를 호출하여 구독하지 않으면 데이터를 발행하지 않음. ⇒
lazy 접근법
- ex) 웹 요청, 데이터베이스 쿼리와 파일 읽기 등
뜨거운 Observable이란?
- 구독자가 존재 여부와 관계없이 데이터를 발행하는 Observable
- 여러 구독자를 고려할 수 있지만 데이터를 처음부터 모두 수신할 것을 보장할 수 없음.
- 데이터를 발행하는 속도와 구독자가 처리하는 속도의 차이가 클 때 발생하는
배압
을 주의해야 함.
- ex) 마우스 이벤트, 키보드 이벤트, 시스템 이벤트, 센서 데이터 등
💡
차가운 Observable은 구독하면 준비된 데이터를 처음부터 발행
뜨거운 Observable은 구독한 시점부터 Observable에서 발행한 값을 받음