http://kafka.apache.org/downloads.html 가서 스칼라 2.12를 다운로드하십시오. 이 버전은 스칼라와 zookepper이미 포함되어 있습니다. 아래 단계에 따라 카프카를 설정합니다. 이 튜토리얼에서는, 우리는 메이븐을 사용하여 샘플 아파치 카프카 자바 응용 프로그램을 개발할 것입니다. 우리는 우리의 로컬 기계에서 아파치 카프카와 사육사를 구성하고 카프카 브로커에 여러 파티션과 테스트 주제를 만들 것입니다. 우리는 주제에 메시지를 생성하고 또한 그것에서 메시지를 소비하는 자바에 정의 된 별도의 소비자와 생산자가있을 것이다. 또한 단일 토픽의 여러 파티션에 메시지를 생성하는 방법과 이러한 메시지가 소비자 그룹에서 어떻게 사용되는지도 살펴봅니다. 이제 우리는 카프카에 사용되는 일반적인 용어와 주제에 대한 정보를 볼 수있는 기본 명령을 알고, 작업 예제로 시작하자. 5. .binwindowskafka-server-start.bat.configserver.properties를 실행하여 카프카를 시작합니다. 이후, 우리는 기본 구성에 어떤 변경 하지 않은, Kafka 실행 해야 http://localhost:9092 기본적으로 버퍼에 추가 사용 되지 않는 공간이 있는 경우에 즉시 보낼 수 있는 버퍼를 사용할 수 있습니다. 그러나 요청 수를 줄이려면 linger.ms 0보다 큰 것으로 설정할 수 있습니다.

이렇게 하면 생산자가 동일한 일괄 처리를 채우기 위해 더 많은 레코드가 도착할 수 있도록 요청을 보내기 전에 해당 밀리초까지 기다려야 합니다. 이는 TCP의 Nagle 알고리즘과 유사합니다. 예를 들어 위의 코드 조각에서 느린 시간을 1밀리초로 설정했기 때문에 단일 요청으로 100개의 레코드가 모두 전송될 수 있습니다. 그러나 이 설정은 버퍼를 채우지 않은 경우 더 많은 레코드가 도착할 때까지 요청에 1밀리초의 대기 시간을 추가합니다. 시간에 가깝게 도착하는 레코드는 일반적으로 linger.ms=0과 함께 일괄 처리되므로 느린 구성에 관계없이 무거운 부하 일괄 처리가 수행됩니다. 그러나 이 것을 0보다 큰 것으로 설정하면 적은 양의 대기 시간으로 최대 부하가 되지 않을 때 보다 적게, 더 효율적인 요청으로 이어질 수 있습니다. 메시지 키를 구성하려면 org.apache.kafka.common.serialization.ByteArray Serializer에서 KEY_SERIALIZER_CLASS_CONFIG 값을 설정합니다. null을 바이트[]로 변환할 필요가 없기 때문에 이 효과가 있습니다.

메시지 값의 경우 해당 클래스가 문자열을 바이트로 변환하는 방법을 알고 있기 때문에 VALUE_serializer_CLASS_CONFIG를 org.apache.kafka.common.serialization.StringSerializer에 설정합니다.

Scroll Up