This is an old revision of the document!


Concurrency and Parallelism

기본 개념

  • Parallelism
    • Data Parallelism
    • Task Parallelism

Reactive Streams

Back pressure

Publisher가 생산하는 데이터 처리 속도보다 Subscriber가 소비하는 데이터 처리 속도가 늦을 때, 처리를 늦추거나 중단하는 기술.

  • push mode : “Publisher → Subscriber”. Subscriber의 데이터 처리 속도가 빠른 경우. (정상)
  • pull mode : “Subscriber ← Publisher”. Subscriber의 데이터 처리 속도가 느린 경우. 데이터를 처리할 수 있을 때 당겨(pull)온다.

활용

Java

Scala

용어

  • Failover : 장애 극복, 시스템 대체 작동. 장애 발생시 예비 시스템으로 전환되는 기능
  • Redundancy : 장애에 대비하기 위한 복제된 예비 장치나 기능
  • Data Stream : 원소가 열거된 것. Producer가 스트림에 원소를 제공하고, Consumer가 스트림에서 원소를 읽는 동안에만 존재하는 일시적인 개념. 처리해야할 데이터가 얼마나 많을 지 알 수 없고, Producer와 Consumer의 각기 다른 속도를 잘 처리할 수 있을지 어려운 문제를 갖고 있다. 1)
concurrency_and_parallelism.1617890779.txt.gz · Last modified: 2021/04/08 15:06 by ledyx