리액티브 프로그래밍 시리즈 3 - 스레드 스케쥴링 (Thread scheduling)
이 포스트 시리즈는 Reactive Programming은 토비의 스프링 저자 이일민님의 리액티브 프로그래밍 유튜브 강좌를 공부하며 정리한 내용입니다. 1. 표준 Reactive streams의 문제점 지금까지 봐온 코드는 전부 하나의 스레드에서 동작한다. 이 코드를 실전에서 활용하기엔 그닥 유용하지 않은 코드이다. Publisher가 Blocking I/O를 사용하거나 데이터를 준비하는데 시간이 오래걸릴 경우 그걸 다 기다려야하기 때문이다. 반대로 Publisher의 데이터 생성은 굉장히 빠른데, Subscriber의 데이터 처리가 늦을 경우도 마찬가지다. Reactor에서는 Scheduler를 스레드 개념의 오퍼레이터를 활용해 이부분을 해결한다. 여기에서는 이 개념을 직접 구현한 코드를 보겠다. 아래..