kafka artifactIds kafka_2.10和kafka-clients之间有什么不同?

时间:2016-02-01 04:00:17

标签: apache-kafka

Kafka 0.9客户端API的以下maven依赖项有何不同?

第1部分:

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka_2.10</artifactId>
    <version>0.9.0.0</version>
    <exclusions>
        <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-library</artifactId>
    <version>2.10.0</version>
</dependency>

第2部分:

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>0.9.0.0</version>
</dependency>

2 个答案:

答案 0 :(得分:6)

kafka-clients仅在最近才被引入,旨在容纳新客户端,这些客户端是纯Java实现并且与服务器代码完全隔离。旧的客户(包括我们称之为&#34;旧的&#34;消费者正在开发新消费者,但实际上是&#34;当前&#34;消费者)都在核心模块中({{1} })。

source

答案 1 :(得分:2)

Kafka_2.10依赖意味着当前的Kafka是在Scala 2.10中实现的,这是编写Kafka的编程语言。 kafka-clients 0.9.0.0表示客户端可以与Kafka通信版本0.9.0.0。

总结一下,2.10是编程语言Scala的版本#,而0.9.0.0是流媒体平台Kafka的版本#。