领先一步
VMware 提供培训和认证,助您加速进步。
了解更多我很高兴地宣布 spring-kafka (Spring for Apache Kafka) 的第一个里程碑版本现已可用 (1.0.0.M1)。
现有的 spring-integration-kafka 扩展项目 - 目前版本为 1.3.0.RELEASE,支持 Kafka 0.8.x.x,并用于 Spring XD (Kafka MessageBus) 和 Spring Cloud Stream (Kafka Binder)。
这个新项目 (spring-kafka) 将核心组件分离出来成为一个独立的工程。它基于新的 0.9.0.x 原生 Java Kafka 客户端。
spring-kafka 为所有 Spring 用户带来了熟悉的 Spring 编程模型到 Apache Kafka,而不仅仅是 Spring Integration 的用户。即将发布的 spring-integration-kafka 版本将进行彻底重写,内部将利用 spring-kafka 项目。
与 Spring 产品组合中的其他消息项目类似,spring-kafka 提供了
@KafkaListener - 类似于 @JmsListener 和 @RabbitListener)。KafkaTemplate 用于同步和异步发送到 Kafka 主题@Configuration
@EnableKafka
public class KafkaConfig {
// Infrastructure @Beans omitted.
// See Reference Manual and tests for comprehensive sample
@Bean
public Listener listener() {
return new Listener();
}
}
public class Listener {
@KafkaListener(topics = "myTopic")
public void handleFromKakfa(String payload) {
...
}
}
使用 Maven 或 Gradle
<dependencies>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
<version>1.0.0.M1</version>
</dependency>
</dependencies>
dependencies {
compile 'org.springframework.kafka:spring-kafka:1.0.0.M1'
}
此外,还提供了 spring-kafka-test 构件,其中包含测试支持,包括嵌入式 Kafka 代理、hamcrest Matchers 等。
这两个构件都可以在 repo.spring.io/milestone 仓库中找到。
有关更多信息,请参阅 里程碑 1 参考手册。
非常感谢 Soby Chacko (启动了最初的 Spring Integration Kafka 扩展)、Marius Bogoevici 和 Artem Bilan 在这个重要项目上的帮助。
# 下一步
spring-kafka 的 spring-integration-kafka (2.0) 的第一个里程碑版本spring-cloud-stream 的新 Binder 实现与此同时,您可以在 github 仓库 中关注进展、报告问题等。