kafka
-
Kafka 스키마 관리, Schema Registry개발하면서/코드보면서 2019. 8. 26. 00:56
Why? Apache Kafka® is a distributed streaming platform. Apache Kafka 페이지에 들어가면 볼드체로 가장 먼저 보이는 문장입니다. 카프카는 메시지 브로커 역할을 굉장히 잘해주는데요 , 주고받는 메시지의 유효성 검사(?)는 하지 않습니다. 보내면 받은 대로 저장하고 달라면 저장된 데이터를 주는 역할만 하죠. Consumer 입장에서는 받은 메시지가 어떤 내용인지 알아야 파싱 하고 적절한 로직을 실행할 텐데 Kafka는 이를 보장하지 않으니 Producer, Consumer 개발하는 쪽에서 서로 약속하고 메시지를 주고받아야 합니다. 그래서 csv, xml, json 같은 데이터 포맷을 적용해서 메시지를 주고받습니다. 하지만 이것도 불안한 점이 있습니다. Pr..
-
Kafka Consumer Lag 모니터링, Burrow를 알아보자 (2)개발하면서/코드보면서 2019. 8. 21. 01:09
이전 포스트에서 Burrow의 기본 구조와 Consumer group list 관리가 어떻게 되고 있는지 알아보았습니다. 이번에는 Burrow의 모듈 중 storage, evaluator를 알아보겠습니다. storage는 Burrow에서 수집하는 데이터(Topic/Consumer 정보) 저장/조회 역할을 담당하고 있습니다. evaluator는 Consumer Offset/Lag을 지켜보면서 Consumer Group의 상태를 판단하는 역할을 합니다. Topic/Partition 상태를 판단해서 가장 안 좋은(?) 상태가 Consumer Group의 상태가 됩니다. storage storage는 카프카의 topic, offset, consumer offset 정보를 저장/조회 역할을 하는 모듈입니다. Bu..
-
Kafka Consumer Lag 모니터링, Burrow를 알아보자 (1)개발하면서/코드보면서 2019. 5. 28. 09:34
카프카 모니터링을 적용 하다보면 브로커는 JMX만으로 충분하지만 Producer나 Consumer는 까다롭습니다. https://docs.confluent.io/current/kafka/monitoring.html#server-metrics Monitoring Kafka — Confluent Platform Version 5.2.1 Docs Administer » Kafka Operations » Monitoring Kafka View page source Monitoring Kafka Apache Kafka® brokers and clients report many internal metrics. JMX is the default reporter, though you can add any pluggab..