개발자는 기록이 답이다

패스트캠퍼스 환급챌린지 19일차 미션 (2월 19일) :  Spring Webflux 완전 정복 : 코루틴부터 리액티브 MSA 프로젝트까지 강의 후기 본문

패스트캠퍼스

패스트캠퍼스 환급챌린지 19일차 미션 (2월 19일) :  Spring Webflux 완전 정복 : 코루틴부터 리액티브 MSA 프로젝트까지 강의 후기

slow-walker 2024. 2. 19. 23:04

Reactive streams

  • 비동기데이터스트처리를위한
  • PublisherSubscriber에게 비동기적으로 이벤트를 전달
  • onSubscribe: subscriberpublisher 사 이에 연결이 시작될때 호출. Subscription 객 체를 전달
  • onNext: Publisher가 데이터를 생성하고 Subscriber에게 전달. Subscriber는 데이터 를고처리

 

  • onComplete : 모든아이템이전달완료.더이 상 전달할 데이터가 없을때 호출. Publisher와 Subscriber의 연결이 종료
  • onError : 데이터스트림처리중오류가발생 했을때 호출. 오류 정보를 전달하고 Publisher 와 Subscriber의 연결이 종료

 

Subscription

public static interface Subscription {
	public void request(long n);
    public void cancel();
}
  • request: SubscriberPublisher에게 n개 의 데이터를 요청. Subscriber가 처리 가능한 만만 요청
  • cancel: Subscriber가 데이터 요청을 소하 고 연결을 종료. Subscriber가 더 이상 데이터 를지않거나 에러가 발생한 경우 호출

Reactor

  • Reactive streams를 구현한 비동기 데이터 스 트처리를 지원
  • Spring webflux에서 메인으로 사용
  • backpressure를제공하여안정성을이고
  • 한 연산자로 다한 연산들을 조하여 가성 증대

Reactor와 컨베이어 벨트

  • 컨베이어벨트에비유
  • 데이터는소스(Publisher)에서나와서소비자(Subscriber)에게 전달
  • 원재료는다한변형과중간단계를거고중 도 중간 부을 모으는더라인의일부가되기도
  • 한 지점에서 결함이 발생하거나 트가 막히되면 업스트에 신호를 보내서 흐름을 제한

 

Reactor Publisher

  • Reactor에서Mono와Flux제공
  • CorePublishserreactive streams
  • Publishser를 구현
  • reactive streams와 호환

 


 

※ 본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다. https://bit.ly/48sS29N