Backpressure 의미Backpressure는 Publisher가 끊임없이 emit하는 무수히 많은 데이터를 적절하게 제어하여 데이터 처리에 있어 과부하가 걸리지 않도록 제어하는 데이터 처리 방식입니다. Backpressure가 필요한 이유Publisher가 빠르게 데이터를 emit하는 경우 Subscriber의 처리속도가 느려서 처리가 끝나기도 전에 계속해서 emit 합니다.처리를 하지 못하고 대기 중인 데이터가 지속적으로 쌓이게되어 오버플로가 발생하거나 최악의 경우에는 시스템이 다운되는 문제가 발생한다. Reactor에서의 Backpressure 처리 방식BaseSubscriber를 사용하여 데이터 요청 개수를 적절하게 제어하는 방식 Subscriber가 적절히 처리할 수 있는 수준의 데이터 개..
전체 글
컴퓨터 시스템에서 Hot과 Cold의 의미Hot은 무언가 처음부터 다시 시작하지 않고, 같은 작업이 반복되지 않는 작업을 이야기합니다.서비스나 시스템을 재가동할 필요가 없고, 인터넷에 다시 연결할 필요 없이 바로 사용 가능을 의미 (Hot Swap, Hot Deploy)Cold는 처음부터 새로 시작해야 하고, 새로 시작하기 때문에 같은 작업이 반복되게 됩니다.서버나 시스템을 부팅할 때마다 초기화 작업을 매번 하거나 인터넷에 다시 연결해야 하는 상황등즉 Cold는 무언가를 새로 시작하고, Hot은 무언가를 새로 시작하지 않는다라고 말할 수 있습니다. SequencePublisher가 emit하는 데이터의 연속적인 흐름을 정의해 놓은 것으로 표현하면 Operator 체인 형태로 정의된다. Cold Sequ..
책을 읽고 이전 글을 작성하면서 ISR 개념에 대해서 학습하고자 정리한 내용입니다. 카프카 프로듀서: 카프카에 메시지 쓰기프로서 개요애플리케이션이 카프카에 메시지를 써야하는 상황들감사 혹은 분석을 목적으로 하는 사용자 행동 기록성능 매트릭 기록로그 메시지 저장 (ELK 스택에서 Filebeat Kafka output 설정등)스마uhanuu.tistory.com Kafka ReplicationKafka에서는 고가용성을 위하여 Replication이란 기능을 제공합니다.Topic의 Partition들을 다른 브로커들로 복제하는 것을 의미동일한 데이터를 여러 브로커에 기록하여 데이터 손실을 방지 Replication factor(기본값 1)를 통해서 Topic을 이루는 Partition을 replication..
프로서 개요애플리케이션이 카프카에 메시지를 써야하는 상황들감사 혹은 분석을 목적으로 하는 사용자 행동 기록성능 매트릭 기록로그 메시지 저장 (ELK 스택에서 Filebeat Kafka output 설정등)스마트 가전 정보 수집다른 애플리케이션과의 비동기적 통신 수행임의의 정보 데이터베이스 저장 전 버퍼링아래는 카프카에 데이터를 전송할 때 수행되는 주요 단계들이다.카프카에 메시지를 쓰는 작업은 ProducerRecord객체를 생성함으로써 시작되며 토픽과 밸류 지정은 필수 사항이지만, 키와 파티션 지정은 선택사항입니다. ProducerRecord를 전송하는 API를 호출했을 때(send 메서드)프로듀서는 가장 먼저 키와 값 객체가 네트워크 상에서 전송될 수 있도록 직렬화해서 바이트 배열로 변환합니다. @A..