【问题标题】:Kafka performance test not availableKafka 性能测试不可用
【发布时间】:2015-04-02 12:15:45
【问题描述】:

我是Kafka新手,使用kafka_2.8.0-0.8.1.1的版本。

在构建 Kafka 代理并由生产者和消费者对其进行测试后,我决定对 Kafka 进行一些性能测试。

我通过搜索 kafka performance test 找到了 Kafka Benchmark 并通过执行尝试它

./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

但是得到了

Error: Could not find or load main class org.apache.kafka.clients.tools.ProducerPerformance

然后我发现了另一种测试kafka的方法是命令

./bin/kafka-producer-perf-test.sh --broker-list 192.168.2.11:19092,192.168.2.11:19093,192.168.2.11:19094 --messages 100 --topic j1-soa --threads 1 --message-size 100 --batch-size 100 --compression-codec 1

还有一个错误是

Error: Could not find or load main class kafka.perf.ProducerPerformance

我搜索了错误。他们告诉它应该执行一些命令,比如

./sbt update
./sbt package
./sbt assembly-package-dependency

./gradlew jar

在执行./bin/kafka-producer-perf-test.sh之前。

我意识到上述命令仅适用于源版本而不是二进制版本。

然后我下载kafka-0.8.1.1-src.tgz并尝试执行上述命令。

我不知道sbtgradlew是什么。

我只是想运行上面的命令。

运行sbt assembly-package-dependency时出现错误

[info] Set current project to kafka (in build file:/Users/foxzen/Develop/kafka/)
[error] Not a valid command: assembly-package-dependency
[error] Not a valid project ID: assembly-package-dependency
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: assembly-package-dependency (similar: sbt-dependency)
[error] assembly-package-dependency
[error]                            ^

./gradlew jar 也有错误

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'kafka-0.8.1.1-src'.
> Could not resolve all dependencies for configuration ':classpath'.
  > Could not resolve nl.javadude.gradle.plugins:license-gradle-plugin:0.6.1.
 Required by:
     org.apache.kafka:kafka-0.8.1.1-src:0.8.1.1
  > Could not GET 'http://repo1.maven.org/maven2/nl/javadude/gradle/plugins/license-gradle-plugin/0.6.1/license-gradle-plugin-0.6.1.pom'.
     > Connection to http://127.0.0.1:8888 refused
  > Could not GET 'http://dl.bintray.com/content/netflixoss/external-gradle-plugins/nl/javadude/gradle/plugins/license-gradle-plugin/0.6.1/license-gradle-plugin-0.6.1.pom'.
     > Connection to http://127.0.0.1:8888 refused

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 2.924 secs

我真的不知道错误信息是什么意思,也找不到解决办法。

如何使命令./bin/kafka-producer-perf-test.sh 正常工作,以便我可以测试 Kafka 性能?


编辑

导致./gradlew jar失败是我的错。

互联网连接的代理设置为127.0.0.1:8888

我不记得我什么时候做的......

删除 Internet 连接的代理设置后。 ./gradlew jar 命令可以正常工作。

但我又遇到了另一个错误............

start.time, end.time, compression, message.size, batch.size, total.data.sent.in.MB, MB.sec, total.data.sent.in.nMsg, nMsg.sec
[2015-02-04 10:37:22,936] WARN Property reconnect.interval is not valid (kafka.utils.VerifiableProperties)
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
2015-02-04 10:37:22:821, 2015-02-04 10:37:23:451, 1, 100, 100, 0.01, 0.0151, 100, 158.7302

./bin/kafka-producer-perf-test.sh --broker-list 192.168.2.11:19092,192.168.2.11:19093,192.168.2.11:19094 --messages 100 --topic j1-soa --threads 1 --message-size 100 --batch-size 100 --compression-codec 1引起

这是否意味着性能测试成功?

但我没有得到有意义的输出。

我认为错误信息应该是

Failed to load class "org.slf4j.impl.StaticLoggerBinder".

如何解决?

【问题讨论】:

标签: java scala sbt apache-kafka gradlew


【解决方案1】:

ProducerPerformance 的包名已从 org.apache.kafka.clients.toolsorg.apache.kafka.tools

所以,你应该跑步了:

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

更改已在this commit 中进行。

【讨论】:

    【解决方案2】:

    使用 kafka_2.11-0.10.1.1,我只设法将它用于:

    ./bin/kafka-run-class.sh org.apache.kafka.tools.ProducerPerformance --throughput=1000 --topic=MY_TOPIC --num-records=50000000 --record-size=200 --producer-props bootstrap.servers=YOUR_KAFKA_IP:9092 buffer.memory=67108864 batch.size=64000

    请注意,还有一个名为 kafka.tools.ProducerPerformance 的不同类。不过上面那个更好看

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-16
      • 2023-03-31
      • 2020-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-08
      • 1970-01-01
      相关资源
      最近更新 更多