Spring for Apache Kafka 里程碑 1 已发布

工程 | Gary Russell | 2016年3月14日 | ...

我很高兴地宣布,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 编程模型引入到 Apache Kafka 中,适用于所有 Spring 用户,而不仅仅是使用 Spring Integration 的用户。即将发布的 spring-integration-kafka 版本将是一个完整的重写,并在内部使用 spring-kafka 项目。

与 Spring 产品组合中的其他消息传递项目非常相似,spring-kafka 提供了

  • 消息监听器容器。
  • 用于 POJO 消息监听器的注解 (@KafkaListener - 类似于 @JmsListener@RabbitListener)。
  • 用于同步和异步发送到 Kafka 主题的 KafkaTemplate
@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 Matcher 等。

这两个工件都可在 repo.spring.io/milestone 存储库中找到。

有关更多信息,请参见 里程碑 1 参考手册

非常感谢 Soby Chacko(启动最初的 Spring Integration Kafka 扩展),Marius BogoeviciArtem Bilan 在这个重要项目中的帮助。

#下一步

  • 基于 spring-kafkaspring-integration-kafka (2.0) 的第一个里程碑
  • 带有自动配置支持等的 Spring Boot Starter。
  • 用于 spring-cloud-stream 的新 Binder 实现
  • 充实文档,设置项目页面等。

与此同时,您可以在 github repo 中关注进度、报告问题等。

获取 Spring 新闻通讯

订阅 Spring 新闻通讯,保持联系

订阅

抢占先机

VMware 提供培训和认证,以加速您的进步。

了解更多

获得支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部