ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Reactor 개요
    Spring Reactive Web Application/Project Reactor 2023. 7. 22. 06:00
    반응형

    Reactor

      Reactor는 Spring Framework 팀의 주도하에 개발된 리액티브 스트림즈의 구현체로서 Spring Framework 5 버전부터 리액티브 스택에 포함되어 Spring WebFlux 기반의 리액티브 애플리케이션을 제작하기 위한 핵심 역할을 담당합니다.

     

      리액티브 스트림즈의 구현체인 Reactor는 리액티브 프로그래밍을 위한 라이브러리라고 정의할 수 있습니다. 따라서 Reactor Core 라이브러리는 Spring WebFlux 프레임워크에 라이브러리로 포함되어 있습니다.

     

    Reactor 특징

    • Reactive Streams: Reactor는 리액티브 스트림즈 사양을 구현한 리액티브 라이브러리입니다.
    • Non-Blocking
    • Java's functional API: Reactor에서 Publisher와 Subscriber 간의 상호작용은 Java의 함수형 프로그래밍 API를 통해서 이루어집니다.
    • Flux[N]: 0개부터 N개, 즉 무한대의 데이터를 emit 할 수 있는 Reactor의 Publisher입니다.
    • Mono[0|1]: 데이터를 한 건도 emit 하지 않거나 단 한 건만 emit하는 Publisher입니다.
    • Well-suited for microservices: Reactor는 마이크로 서비스 기반 시스템에서 수많은 서비스들 간에 지속적으로 발생하는 I/O를 처리하기에 적합한 기술입니다.
    • Backpressure-ready network: Publisher로부터 전달되는 대량의 데이터를 Subscriber가 적절하게 처리하기 위한 제어 방법이 Backpressure입니다. Reactor는 Backpressure를 위한 다양한 전략을 제공합니다.

     

     

     

    [참고 정보]

    반응형

    'Spring Reactive Web Application > Project Reactor' 카테고리의 다른 글

    Scheduler  (0) 2023.07.25
    Sinks  (0) 2023.07.24
    Backpressure  (0) 2023.07.23
    Cold Sequence와 Hot Sequence  (0) 2023.07.23
    Mono와 Flux  (0) 2023.07.22

    댓글

Designed by Tistory.