Apache Kafka 版 Spring 首个里程碑版本发布

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

我很高兴地宣布,spring-kafka(Apache Kafka 版 Spring)的首个里程碑版本现已发布(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 Integration 的用户)带来了熟悉的 Spring 编程模型到 Apache Kafka。即将发布的spring-integration-kafka 版本将是完整的重写,并在内部使用spring-kafka 项目。

与 Spring 产品组合中的其他消息项目一样,spring-kafka 提供:

  • 消息监听器容器。
  • 用于 POJO 消息监听器的注解(@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 Matcher 等。

这两个构件都可以在repo.spring.io/milestone 仓库中找到。

请参阅 里程碑 1 参考手册 以了解更多信息。

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

#后续步骤

  • 基于spring-kafkaspring-integration-kafka2.0)的首个里程碑版本
  • 一个 Spring Boot 启动器,具有自动配置支持等。
  • 一个用于spring-cloud-stream 的新的Binder 实现
  • 完善文档,设置项目页面等。

同时,您可以在 github 仓库 中跟踪进度、报告问题等。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获得支持

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

了解更多

即将举行的活动

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

查看全部