2017-09-04 17 views
-1

나는 Google에서 잠시 동안 카프카 클러스터를 테스트하는 loadrunner의 플러그인이 있는지 검색했지만 아무 것도 발견되지 않았습니다. 나는 최근에 apache.kafka.clients와 같은 패키지의 도움으로 자바 프로그램을 통해 메시지를 보낼 수 있다는 것을 깨달았습니다.성능 테스트 카프카 loadrunner를 사용하여

새로운 Java 가상 사용자를 만들었습니다.

이 내가 생산 메시징을 사용한 간단한 코드는 다음과 같습니다

import lrapi.lr; 
import java.util.*; 
import org.apache.kafka.clients.producer.*; 

public class Actions 
{ 

    public int init() throws Throwable { 
     return 0; 
    }//end of init 


    public int action() throws Throwable { 
     String topicName = "loadrunnertest"; 
     String key = "Key1"; 
     String value = "hello Vishal"; 


     Properties props = new Properties(); 
     props.put("bootstrap.servers", "localhost:9092"); 
     props.put("key.serializer","org.apache.kafka.common.serialization.StringSerializer");   
     props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer"); 

     Producer<String, String> producer = new KafkaProducer <String,String>(props); 

     ProducerRecord<String, String> record = new ProducerRecord<String,String>(topicName,key,value); 
     producer.send(record);   
     producer.close(); 

     System.out.println("SimpleProducer Completed."); 
     return 0; 
    }//end of action 


    public int end() throws Throwable { 
     return 0; 
    }//end of end 
} 

런타임 설정에서 클래스 경로에 필요한 모든 단지를 추가합니다.
이것으로 카프카 클러스터에 연결할 수 있습니다.
자바를 사용하여 요청을 보내면 최종 결과에 영향을 미칩니 까? 당신이이 쉘 스크립트를 보면

답변

1

카프카는 이미 빈/kafka-producer-perf-test.sh와 빈 등의 부하 테스트 도구와 함께 제공/kafka-consumer-perf-test.sh

당신은 볼 것이다 그들이로드 러너 또는 제이 Kreps '카프카 벤치마킹 블로그 게시물에서 아래의 예와 같은 자바 응용 프로그램에서 직접 호출 할 수 카프카와 함께 제공되는 사업의 성능 테스트 클래스에 대한 단순한 래퍼는 것을

bin/kafka-run-class.sh org.apache.kafka.clients.tools.ProducerPerformance test7 50000000 100 
-1 acks=1 bootstrap.servers=esv4-hcl198.grid.linkedin.com:9092 buffer.memory=67108864 batch.size=8196 
+0

감사합니다! 이것은 내가 찾고 있었던 것이다. –