当前位置: 首页 > 知识库问答 >
问题:

同一个分区真的不能同时被一个组上的多个使用者使用吗

卫振
2023-03-14

有可能吗?如果是,使用消息并将消息发送到数据库的简单方式可能不安全。

共有1个答案

蒋浩
2023-03-14

消费者A认为消费者B已经死了,决定重新平衡并从分区1消费。它得到消息:X、Y、Z(按顺序),然后写入数据库

好的,假设它也为每个消息提交偏移量。

如果B启动备份,它将开始读取最近提交值之后的偏移量,而不是重新读取它以前尝试过的数据,除非用户被手动搜索到该位置。

 类似资料:
  • 由于消息需求的排序,我们有一个主题和一个分区。我们有两个消费者运行在不同的服务器上,具有相同的配置集,即groupId、consumerId和consumerGroup。即 1主题- 当我们部署消费者时,相同的代码会部署在两台服务器上。当消息到来时,我们会注意到两个消费者都在消费消息,而不是只有一个处理。让消费者在两台独立的服务器上运行的原因是,如果一台服务器崩溃,至少其他服务器可以继续处理消息。

  • 我的消费者并不是每次都能收到信息。我有3个代理(3个服务器)的Kafka集群,有3个主题和复制因子3的分区。 我有Java中的消费者,我将最大轮询记录设置在50000获取字节上,配置在50MB上。应用程序每分钟都进行轮询。当我向主题“my-topic”发送10条消息时,consumer不会给我所有的消息,而是只给我其中的一部分,其余的将在下一次运行中给我。消息是在applicatin睡眠期间由脚本

  • 使用Spring kafka模板,我有2个不同的生产者,他们使用相同的键向主题发送不同的消息,始终以相同的形式: 生产者1:发送密钥:1消息:abc分区0 生产者2:发送密钥:2消息:def 我有3个分区,所有消息都根据消息键发送到同一个分区。 现在,我需要确保,根据某些属性,特定消息将发送到特定分区,以便能够管理系统中的某些优先级。 问题是生产者2无法知道生产者1选择了哪个分区。 Kafka确保

  • 是否可以使用topic将消息发送到队列,并有2个消费者接收和处理相同的消息?目前,我已经创建了两个消费者,他们正在观察与一个exchage主题绑定的队列,但是第一个消费者使用了该消息并删除了该队列,第二个消费者没有接收到该消息。

  • 我可以重写,以便它将其数据存储在map中,但这意味着每个方法还需要传递另一个参数。变成,变成,看起来太难看了。操作还需要传递。 据我所知,另一种方法是创建一个存储库,它将管理的数据,并调用操作来重新初始化它。 这种方法的问题是,如果我们有两个(A和B),并且活动容器是A,因此包含在A中呈现的项,容器B仍然会监听的更改。如果检查是方法中的活动容器,我可以添加检查,但我不确定应该这样做。

  • 我刚刚开始使用RabbitMQ和AMQP。 我有一个消息队列 我有多个消费者,我想用相同的消息做不同的事情。 RabbitMQ的大部分文档似乎都集中在循环(round-robin)上,即单个消息由单个消费者使用,负载在每个消费者之间分散。这的确是我目击的行为。 例如:生产者只有一个队列,每2秒发送一次消息: 这里有一个消费者: 如果我启动消费者两次,我可以看到每个消费者都在以循环行为消费交替消息。