Spring Kafka 和 Spring Integration Kafka 的区别
Posted
技术标签:
【中文标题】Spring Kafka 和 Spring Integration Kafka 的区别【英文标题】:DIfference between Spring Kafka and Spring Integration Kafka 【发布时间】:2020-07-25 19:29:48 【问题描述】:在微服务架构中使用 Kafka 作为消息传递系统,我想知道哪个是首选,Spring Kafka 或 Spring Integration Kafka,为什么?另外,我们根据哪些因素决定选择哪一个?
【问题讨论】:
如果你能描述更多关于你的情况的信息会更好。 【参考方案1】:Spring Integration - 扩展 Spring 编程模型以支持众所周知的Enterprise Integration Patterns。
Spring Integration Kafka - 是Spring Integration 项目的扩展模块。
Spring Integration Kafka 现在基于 Spring for Apache Kafka 项目。
Spring for Apache Kafka (spring-kafka) 项目将核心 Spring 概念应用于基于 Kafka 的消息传递解决方案的开发。
根据您的要求,如果您在开发应用程序时没有使用 Spring Integration,那么您需要使用Spring for Apache Kafka (spring-kafka) 项目或Spring Cloud Stream (Kafka)。
Spring-Cloud-Stream - 是基于 Spring Boot 构建的框架,用于构建消息驱动的微服务。
Spring-Kafka vs. Spring-Cloud-Stream (Kafka)
【讨论】:
好的,但我仍然对选择哪一个感到困惑,spring kafka 或 spring integration kafka。与 spring kafka 相比,spring 集成有什么特定的优势吗? Spring Integration Kafka 的优势在于提供:Outbound Channel Adapter 和 Message-Driven Channel Adapter 在 Spring Integration 项目中使用。 使用 Spring Integration for Apache Kafka 版本 3.3,您拥有由 Kafka 主题支持的通道。 docs.spring.io/spring-kafka/docs/2.5.3.RELEASE/reference/html/…以上是关于Spring Kafka 和 Spring Integration Kafka 的区别的主要内容,如果未能解决你的问题,请参考以下文章
Spring Kafka和Spring Boot整合实现消息发送与消费简单案例
Spring Kafka/Spring Cloud Stream 如何保证涉及数据库和 Kafka 的事务性/原子性?