Skip to content

Commit e04a904

Browse files
authored
Update kafka.md
1 parent 62962a7 commit e04a904

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

kafka.md

+6
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
> 중앙에 메시징 시스템 서버를 두고 메시지를 publish 하고 subscribe 하는 형태의 통신은 pub/sub 모델이라고 한다.
55
66
## 카프카의 특징
7+
78
### 프로듀서와 컨슈머의 분리
89
카프카는 메시지를 보내는 역할과 받는 역할이 완전히 분리된 pub/sub 방식을 적용했다. Publisher 는 수신자가 정해져있지 않은 상태의 메시지를 발행하고,
910
구독을 신청한 Subscriber 만 정해진 메시지를 받을 수 있다.
@@ -20,6 +21,11 @@
2021
덕분에 일시적으로 트래픽이 폭주하는 등의 문제로 컨슈머의 처리가 늦어지더라도 메시지는 디스크에 보관되어있기 때문에 컨슈머는 손실없이 메시지를
2122
가져갈 수 있다.
2223

24+
디스크에 기반한 영속적인 저장 방식음 사용함에도 페이지 캐시를 활용하여 높은 처리량을 제공하는 인메모리 방식에 가깝다.
25+
> 메모리에 별도의 캐시를 구현하지 않고 OS 의 페이지 캐시에 위임하여 OS 가 알아서 서버의 유휴 메모리를 페이지 캐시로 사용하여 앞으로 필요할 것으로
26+
예상되는 메시지들을 미리 읽어들여서 디스크의 읽기 성능을 향상 시킨다. 카프카 프로세스가 직접 캐시를 관리하지 않고 OS 에 위임하기 때문에 프로세스를
27+
재시작하더라도 OS 의 페이지 캐시는 그대로 남아있기 때문에 프로세스 재시작 후 캐시를 워밍업할 필요가 없다는 장점이 있다.
28+
2329
### 확장성
2430
하나의 카프카 클러스터는 3대의 브로커로 시작해서 수십대의 브로커로 확장이 가능하다. 확장 작업은 카프카 서비스의 중단없이 온라인 상태에서 작업이
2531
가능하다.

0 commit comments

Comments
 (0)