Loading...
2022. 7. 31. 23:09

[Kafka] 카프카의 코디네이터 Zookeeper

우리가 컴퓨터에 카프카를 설치하려면 반드시 따라서 설치해야하는 것이 있습니다. 바로 주키퍼(Zookeeper)인데요. 다른 메시지 큐와 다르게 카프카는 왜 주키퍼를 필요로 하는 것일까요? 코디네이션 서비스 시스템 (Coordination System) 분산 처리 시스템을 다루다보면 가장 큰 난제가 바로 분산된 시스템끼리 어떻게 정보를 공유할 것인가? 입니다. 쿠버네티스, 카프카 등 분산 시스템 자체는 클러스터를 중심으로 하위 노드들이 집결 되어 있는 형태가 보통인데 클러스터에서 하위 노드를 관리하기 위해 해야할 일은 아래와 같습니다. 각 하위 노드들의 Healthcheck Lock Processing 분산된 서버들끼리 통신할 때 서로 리소스를 공유하려다 보면 자원 점유 문제가 발생하는데, 이를 처리하기 ..

2022. 7. 30. 14:48

[Kafka] Apache Kafka는 무엇이고 왜 성능이 빠를까?

카프카란 무엇일까? 카프카란 말을 들어본 적은 있지만 아직 사용해본 적이 없다면 이 소프트웨어가 되게 생소할 수 있습니다. 카프카는 Linkedin에서 처음 개발하여 아파치 오픈 소스까지 오게 된 대용량 메시지 분산 처리 플랫폼입니다. 메시지 분산 처리 플랫폼 여기서 이야기하는 메시지란, 우리가 개발한 일련의 소프트웨어를 통신하기 위한 메시지를 말합니다. 가령 우리는 소프트웨어를 개발할 때 서로 기능을 분리하기 위해 함수를 사용하는데, 함수끼리 통신을 위해서 보내고 받는 데이터들을 정의합니다. 이를 우리는 파라미터라고 합니다. 그런데, 마이크로서비스는 어떨까요? 서로 프로세스도 다르고 인스턴스도 다른 상황에서 각 서비스끼리 통신하려면 메시지를 주고 받을 수 있어야 합니다. 이를 위해 우리는 메시지 큐를 ..