首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Apache Camel vs Apache Kafka

Apache Camel vs Apache Kafka
EN

Stack Overflow用户
提问于 2018-01-30 19:08:54
回答 2查看 23.4K关注 0票数 16

据我所知,Apache Kafka是异步消息传递平台,而Apache Camel是实现企业集成模式的平台。

那么,Apache Camel和Apache Kafka的实际区别是什么呢?我们计划用Apache Camel实现系统,这相对容易,但我们的客户想要Apache Kafka而不是rational。

选择Apache Kafka实现消息队列功能有什么好处,Apache Camel也可以实现?我担心Kafka只会给项目带来不必要的开销。我们是在比较苹果和橙子吗?

我们需要简单明了的API来设置和使用集群消息队列。我们最初的计划是使用Camel在集群JMS或ActiveMQ队列上消费/生产。Kafka如何让这项任务变得更容易?无论哪种情况,应用程序本身都将在WebLogic服务器上运行。

消息传递将是点对点类型,其中有多个相同服务的实例在运行,但只有一个实例应根据负载均衡策略处理消息并发出结果。消息队列也是集群的,因此服务实例或队列实例的故障都不是SPOF。

EN

回答 2

Stack Overflow用户

发布于 2018-01-30 19:27:48

Camel和Kafka是完全不同的东西。在许多用例中,camel只是用作kafka/activemq/...的客户端。

Kafka和activemq是相似的,但也有不同的东西,请参考What is the difference between Apache kafka vs ActiveMQ。Kafka具有更高的吞吐量,并且数据始终在磁盘上,因此比activemq更可靠一些。

书中说,Kafka通常被用作实时数据流,而在一般情况下,activemq主要用于应用程序之间的集成。但在大多数现实世界中,kafka和activemq可以很容易地相互替代。

票数 11
EN

Stack Overflow用户

发布于 2018-01-30 19:26:41

这两个很难比较。它们并不涵盖相同的工作领域,但存在一些系统,在这些系统中,您可以用一个替换另一个。

所以非常简短。

Kafka是一个消息传递平台,具有流式处理消息Apache Kafka的能力。

Camel是ETL框架,它可以将消息/事件/数据从“任何”输入点(参见Camel的端点列表)转换为“任何”输出Apache Camel - Enterprise Integration Patterns

你可以使用没有卡夫卡的骆驼,反之亦然。当然,同时使用这两种方法也是有可能的。

  • 案例1.处理邮件并将其存储在PostgreSQL DB中。卡夫卡在这里是没用的。
  • 案例2.处理来自ActiveMQ的消息并将其发送给Kafka。两者都可以使用。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48519935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档