Apache kafka 如何创建共享队列?

Apache kafka 如何创建共享队列?,apache-kafka,kafka-consumer-api,Apache Kafka,Kafka Consumer Api,据我所知,每个分区只能有一个使用者(每个使用者组),要创建队列,我必须只使用一个使用者组,因为多个使用者组将获得相同的消息 问题:我有2个消费者,消费者处理的每个事件可能需要1分钟到30分钟,我制作了2个分区在2个消费者之间分发事件。 第一个分区得到2个事件,每个事件需要30分钟来处理,第二个分区得到1个事件,每个事件只需要1分钟来处理。没有办法创建共享队列吗?比如,一个工作者/使用者一空闲,它就在需要的地方拉取另一个事件(同一分区有多个使用者,但不读取同一事件两次) “是否无法创建共享队列?”

据我所知,每个分区只能有一个使用者(每个使用者组),要创建队列,我必须只使用一个使用者组,因为多个使用者组将获得相同的消息

问题:我有2个消费者,消费者处理的每个事件可能需要1分钟到30分钟,我制作了2个分区在2个消费者之间分发事件。 第一个分区得到2个事件,每个事件需要30分钟来处理,第二个分区得到1个事件,每个事件只需要1分钟来处理。没有办法创建共享队列吗?比如,一个工作者/使用者一空闲,它就在需要的地方拉取另一个事件(同一分区有多个使用者,但不读取同一事件两次)

“是否无法创建共享队列?”

单个分区只能由使用者组中的一个使用者使用。这一概念不能改变

您可以将分区的数量增加到更高的数量,希望从长远来看,需要花费大量时间来处理的事件是均匀分布在各个分区中的。或者,更好的是,如果您事先知道处理时间,并且可以控制生产者,那么您可以手动控制事件的分区,以实现均匀分布

如果你不能控制制作人,你可以有一个专门的消费者,只在第二个主题中进行分发,然后让处理作业从第二个主题开始

“是否无法创建共享队列?”

单个分区只能由使用者组中的一个使用者使用。这一概念不能改变

您可以将分区的数量增加到更高的数量,希望从长远来看,需要花费大量时间来处理的事件是均匀分布在各个分区中的。或者,更好的是,如果您事先知道处理时间,并且可以控制生产者,那么您可以手动控制事件的分区,以实现均匀分布

如果你不能控制制作人,你可以有一个专门的消费者,只在第二个主题中进行分发,然后让处理作业从第二个主题开始