当前位置: 首页 > 编程笔记 >

Apache Kafka和JMS之间的区别。

常元章
2023-03-14
本文向大家介绍Apache Kafka和JMS之间的区别。,包括了Apache Kafka和JMS之间的区别。的使用技巧和注意事项,需要的朋友参考一下

Kafka和JMS都是消息传递系统。Java消息服务是Java提供的api。它用于在您的应用程序中实现消息传递系统。JMS支持队列和发布者/订阅者(主题)消息传递系统。使用队列,当第一个使用者使用一条消息时,该消息将从队列中删除,其他人无法再使用它。有了主题,多个消费者会收到每条消息,但是很难扩展。

Kafka是这两个概念的概括-它允许在同一消费者组的成员之间进行缩放,但也可以在许多不同的消费者组之间广播相同的消息。当新的消费者加入或离开消费者组时,Kafka还提供自动重新平衡。

序号 阿帕奇·卡夫卡 JMS
1
基本的
Apache Kafka是一个分布式的发布-订阅消息传递系统,它从不同的源系统接收数据,并使数据实时可用于目标系统。
Java消息服务是Java提供的api。它用于在您的应用程序中实现消息传递系统。
2
拉/推机构
它使用了拉机制,客户端每次都需要轮询消息  
它采用基于推送的模型,消息可以广播给所有消费者
3
邮件保留政策
基于政策
基于确认
4。
自动平衡
当新消费者html" target="_blank">添加或从消费者组中删除时,它提供自动平衡
它不提供自动重新平衡
5
消息顺序
Kafka确保按分区级别发送消息的顺序接收消息
JMS不支持订购消息。
 类似资料:
  • 我已经在kafka上工作了相当长的六个月,我对用户延迟和存储到主题分区中的数据有一些疑问。 问题1:最初,当我开始阅读Kafka并了解如何使用Kafka的功能时,我被教导说,一个只有一部分和一个复制因子的主题会创造奇迹。经过相当长的六个月的工作,将我的项目迁移到live之后,使用我的主题消息的消费者开始给我一个延迟。我阅读了许多关于消费者延迟的堆栈溢出答案,得出结论,如果我增加某个主题的分区和复制

  • 消息生成器组件具有以下功能: 我使用AWS SQS异步发送消息 我假设消息将在队列中,直到它被显式确认。(因为客户端确认模式) 然而,它被从队列中移除。 消息消费者组件: 我已经编写了一个异步消费者来从队列中提取消息。这是Spring配置文件; 我使用sessionAcknowledgeMode属性为我的消费者配置了客户端acknowledgemode。但消息仍然会从队列中删除,而消费者不会使用消

  • 问题内容: 我错放了太多次了,我想我一直忘记,因为我不知道两者之间的区别,只是一个给了我我期望的价值,而另一个却没有。 为什么是这样? 问题答案: 是的简写形式(尽管请注意,该表达式只会被计算一次。) 是的,即指定一元的到。 例子:

  • 问题内容: 因此,我有一段简单的代码可以打印出整数1-10: 然后,如果仅在第3行上更改一个运算符,它将打印出无限数量的1整数(我知道为什么会这样做)。为什么在运行第二个程序时没有出现语法错误?如果赋值运算符后面跟着一个加法运算符,它不会调用语法错误吗? 问题答案: 与相同, 只是意味着。

  • 问题内容: 有人可以解释一下 和 我不知道“确切”的含义 问题答案: 在这个例子中,什么都没有。当您具有多个具有相似名称的路径时,该参数将起作用: 例如,假设我们有一个显示用户列表的组件。我们还有一个用于创建用户的组件。的网址应嵌套在下。因此,我们的设置可能如下所示: 现在,这里的问题是,当我们转到路由器时,将通过所有定义的路由,并返回它找到的第一个匹配项。因此,在这种情况下,它将首先找到路线,然