kafka

BigData

아파치 카프카(Apache Kafka)의 성능 최적화 (Throughput 편) [2]

시작하며... 🚀 이번에는 4개의 성능 목표 중 첫 번째로 Throughput에 대해서 어떤 파라미터를 튜닝하는지 알아보겠습니다. 프로듀서와 컨슈머의 option 중 어떤 option이 Throughput에 영향을 주는지 알아보며 어떻게 이 옵션의 파라미터가 영향을 주며, 어떻게 설정해야 하는지를 보도록 하겠습니다. Throughput : 처리량으로 불리우며, 카프카가 얼마나 많은 데이터를 처리할 수 있는지에 대한 메트릭이다. 1. Producer를 통한 Throughput 최대화 🚀🚀 Partition Throughput를 최적화하는 방법은 Partition 수를 증가시키는 방법이 대표적입니다. Partition의 수를 증가시키면, 분산 효과를 가져오며 분산처리를 하면 할 수 록 더 많은 데이터를 처리..

BigData

아파치 카프카(Apache Kafka)의 성능 최적화 [1]

이번 포스팅은 아파치 카프카의 성능을 최적화할 수 있는 파라미터 tunning 방법을 알아봅시다. 시작하며... 🚀 4개의 성능 목표를 최적화하기 위해 변경해야 하는 Kafka 구성 매개변수가 있습니다. 사실 Kafka 디자인 자체는 사용자에게 구성 유연성을 제공하며 Kafka 배포가 서비스 목표에 최적화되어 있는지 확인하려면 일부 구성 매개변수의 설정을 조정하고 자체 환경에서 벤치마킹을 조사해야 합니다. 이상적으로는 프로덕션으로 이동하기 전에 또는 적어도 더 큰 클러스터 크기로 확장하기 전에 수행해야 합니다. 첫 번째 단계는 최적화할 성능 목표를 결정하는 것입니다. Throughput, Latency, Durability, Availability이라는 서로 절충점을 자주 포함하는 4가지 목표를 고려할 ..

카테고리 없음

[Apache Kafka] 카프카 스트림즈 API(Streams API)를 알아보자

이번장에서는 카프카 스트림즈 API(Streams API)에 대해서 알아보겠습니다. 카프카는 대규모 메시지를 저장하고 빠르게 처리하기 위해 만들어진 플랫폼입니다. 처음에는 메시지를 다른 프로세스나 애플리케이션에 전달하기 위해 사용되었지만, 카프카의 강력한 성능으로 인해 연속된 메시지인 스트림을 처리하는 데도 점차 사용되기 시작했습니다. 카프카 스트림즈 API를 이용하면 스파크(Spark)나 스톰(Storm)과 같은 별도의 스트리밍 엔진을 사용하지 않고도 간단하게 실시간 분석을 수행할 수 있습니다. 스트림즈를 본격적으로 알아보기전에 스트림 프로세싱과 배치 프로세싱에 대해 알아보겠습니다. 스트림 프로세싱, 배치 프로세싱 스트림 프로세싱(Stream Processing)은 데이터들이 지속적으로 유입되고 나가는..

BigData

[Apache Kafka] 카프카 컨슈머 그룹(Consumer group)을 알아보자 [3]

이번 포스팅을 통해서 컨슈머 그룹에 관해서 알아보겠습니다. 일반적으로 컨슈머는 카프카 토픽에서 메시지를 읽어오는 역할을 합니다. 컨슈머 그룹은 하나의 토픽에서 여러 컨슈머 그룹이 동시에 접속해 메시지를 가져올 수 있습니다. 이것은 기존의 다른 메시징 큐 솔루션에서 컨슈머가 메시지를 가져가면 큐에서 삭제되어 다른 컨슈머가 가져갈 수 없는 것과는 다른 방식인데 이 방식이 좋은 이유는 하나의 데이터를 다양한 용도로 사용하는 요구가 많아졌기 때문입니다. 또한 만약 프로듀서가 토픽에 보내는 메시지 속도가 갑자기 증가해 컨슈머가 메시지를 가져가는 속도보다 빨리지게 되면 처리하지 못한 메시지들이 많아지게 되어 프로듀서가 생성하는 시간과 컨슈머가 이 메시지를 처리하는 시간의 간격이 점점 벌어지게 됩니다. 이 시간차를 ..

busybeans
'kafka' 태그의 글 목록 (2 Page)