TIL

220808 // Kafka란?

하얀잔디 2022. 8. 8. 15:38

그냥 쉽게말해 정말 효율적인 큐 라고 생각하면 되는 것 같다.

 

만든 이유 : 기존 end to end  연결 방식에서는 통합/중앙화된 전송 영역이 없기에 복잡해졌기 때문.

->  어우 복잡해..

모든 시스템으로 데이터 전송하고, 실시간 처리가능 하고, 급속도로 성장하는 서비스를 위해 확장이 용이한 Kafka 탄생!

 

 

 

 

 

짜잔

 

Topic 단위로 이벤트를 씀. 

Producer Consumer을 분리해서
Pro -> Broker의 Topic에 메세지를 게시하기만 하면 되고, 컨슈머는 가져오면됨

** 높은 확장성을 제공함.

Consumer는 Pull 모델을 기반으로 처리함.

--> Consumer가 필요할때 브로커로부터 메세지를 가져옴

 

 

 

Pub/Sub 왜함??

 

중앙에 메세징 시스템 서버를 두어서, 개체가 빠지거나 수신불능이 되어도, 메세징 시스템만있으면 유실 x . N:M으로 연결된게 아니라 확장성이 용이함

 

 



장점 :
1. 다양한 소비자의 처리 형태 / 속도 고려 안해도됨.

2. 높은 가용성

 

단점:

 1. 직접 통신이 아니라 정확히 전달됐는지 확인하려면 코드가 복잡해짐

 2. 메시징 시스템을 통해 메시지 전달속도가 느림.

'TIL' 카테고리의 다른 글

220816 자바에서의 문자열  (0) 2022.08.16
220812 자바객체복사. JoinTable. findById 의 작동원리 등  (0) 2022.08.12
220811  (0) 2022.08.11
220810 TIL  (0) 2022.08.10
220808 // 스프링에서 cache에 대하여  (0) 2022.08.08