Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 具有多个分区的kafka主题与具有多个队列侦听器的ActiveMQ之间有什么区别_Apache Kafka_Activemq - Fatal编程技术网

Apache kafka 具有多个分区的kafka主题与具有多个队列侦听器的ActiveMQ之间有什么区别

Apache kafka 具有多个分区的kafka主题与具有多个队列侦听器的ActiveMQ之间有什么区别,apache-kafka,activemq,Apache Kafka,Activemq,我是Kafa的新手,但有使用ActiveMQ的经验。在阅读卡夫卡时,我了解到一个主题可以有多个分区,可以通过“循环”技术生成。我还知道,每个主题分区只能有一个使用者 到目前为止,我无法理解的是,使用多个分区,每个分区上只有一个使用者,而不是使用单个ActiveMQ队列和多个使用者(线程)的好处 让我试着证明一下 卡夫卡 将消息1、2、3生成到具有3个分区的主题。分区1将获得消息1,分区2将获得消息2,分区3将获得消息3。 然后,我可能需要3个消费者(具有配置)来同时获取这3条消息 ActiveM

我是Kafa的新手,但有使用ActiveMQ的经验。在阅读卡夫卡时,我了解到一个主题可以有多个分区,可以通过“循环”技术生成。我还知道,每个主题分区只能有一个使用者

到目前为止,我无法理解的是,使用多个分区,每个分区上只有一个使用者,而不是使用单个ActiveMQ队列和多个使用者(线程)的好处

让我试着证明一下

卡夫卡 将消息1、2、3生成到具有3个分区的主题。分区1将获得消息1,分区2将获得消息2,分区3将获得消息3。 然后,我可能需要3个消费者(具有配置)来同时获取这3条消息

ActiveMQ 向队列生成消息1、2、3。我可以有一个消息侦听器(例如,一个MDB,具有一个配置),它将在队列中的每个消息的线程中启动

在我看来,我需要进行额外的工作和配置,以便在单个ActiveMQ队列所需的工作上使用来自Kafka(3个分区)的3条消息


我遗漏了什么吗?

如果你想要公平的比较,为什么会有3个卡夫卡分区?另外,如果您在Kafka中设置了相同的消息键,那么所有记录都将转到一个分区,而不是循环“每个分区只有一个使用者”也有点错误。您可以有多个使用者,但只有一个使用者组将该组中的使用者分配给任何一个partition.BTW和其他主题。因此,如果我有一种消息类型和3个分区,我是否需要创建3个使用者,并将它们配置为使用特定的分区?我本以为这会重复代码。再一次,关于卡夫卡的早期学习让我们为这些简单的问题道歉:-)另外,这难道不意味着卡夫卡分区实际上是主题中的一个队列吗?