리엑터는 비동기 실행을 강제하지 않는다. 모두 main 쓰레드에서 실행된다. Flux.range(1, 3) .map(i -> { log.info("map {} to {}", i, i + 2); return i + 2; }) .flatMap(i -> { log.info("flatMap {} to Flux.range({}, {})", i, 1, i); return Flux.range(1, i); }) .subscribe(i -> log.info("next " + i)); publishOh을 이용한 신호 처리 쓰레드 스케줄링 publishOn()은 두개의 인자를 받는다. 첫번째 인자는 비동기로 신호를 처리할 스케쥴러이다. 두번째 인자는 스케줄러가 신호를 처리하기 전에 미리 가져올(prefetch) 데이터 개수..