我想描述以下场景:我有一个节点。js后端应用程序(它使用单线程事件循环)。这是系统的总体架构:Producer- 假设制作者向Kafka发送了一条消息,这条消息的目的是在数据库中进行某个查询并检索查询结果。但是,众所周知Kafka是一个异步系统。如果制作者向Kafka发送消息,它会得到一个响应,表明该消息已被Kafka经纪人接受。Kafka broker不会等到消费者轮询消息并处理它。 在这种情况
我正在使用Kafka 0.8 最近,我们开始喂食和消耗一个行为怪异的新主题,消耗的偏移量突然被重置,它尊重我们设置的auto.offset.reset策略(实际上是最小的)但我无法理解为什么该主题会突然重置其偏移量。 我正在使用高级消费者。 这是我发现的一些错误日志: 我们有一堆这样的错误日志: 每次出现此问题时,我都会看到警告日志: 然后真正的问题发生了: 现在的问题是:有人已经经历过这种行为吗
我有一个使用ActiveMQ的消息队列。web请求用persistency=true将消息放入队列。现在,我有两个消费者,它们都作为单独的会话连接到这个队列。使用者1总是确认消息,但使用者2从不这样做。 JMS队列实现负载平衡器语义。一条消息将被一个使用者接收。如果在发送消息时没有可用的使用者,它将被保留,直到有可以处理消息的使用者可用为止。如果使用者接收到一条消息,但在关闭之前没有确认它,那么该
以下是我的情况: 我们有一个Spring cloud Stream 3 Kafka服务连接到同一个代理中的多个主题,但我想基于属性控制连接到特定主题。 每个主题都有自己的活页夹和绑定,但代理对所有人来说都是一样的。 我尝试使用下面的属性禁用绑定(这是我到目前为止找到的唯一解决方案),这适用于StreamListener不接收消息,但与主题的连接和重新平衡仍在发生。 我想知道活页夹级别是否有任何设置
我对Kafka相对来说是新的,我试图在主题上发送消息后产生消费者。 单个生产者在不同的分区上发送200个msg。 我多次运行消费者脚本。
当我向主题“Test19”发送任何消息时,配置的ServiceActivator“ProcessMessage”方法将两条消息显示为配置的两个客户,但这里的问题是,在添加到消费者上下文之前,我需要为每个客户加载入站配置文件…否则,我只能在控制台中得到一条消息…是正确的方式还是我需要在这里改变什么? 谢了。
我的问题是,我无法足够快地轮询我的队列,以保持我的队列为空或接近空。我最初的想法是,我可以让使用者以x/s的速率通过Camel从SQS接收消息。从那里,我可以简单地创建更多的消费者,以达到我需要的消息处理速度。 我的消费者: 如图所示,我设置了和以提高消息的速率,但是我无法生成具有相同endpoint的多个使用者。 我在文档中读到,我相信SQSendpoint也是如此,因为生成多个使用者将只给我一
在某些情况下,我使用Kafka流对主题的小内存(hashmap)投影进行建模。K,V缓存确实需要一些操作,因此它不是GlobalKTable的好例子。在这种“缓存”场景中,我希望我的所有兄弟实例都具有相同的缓存,因此我需要绕过消费者组机制。 要实现这一点,我通常只需使用随机生成的应用程序ID启动我的应用程序,因此每个应用程序每次重新启动都会重新加载主题。唯一的警告是,我最终会有一些消费者群体在Ka
我有一个用例,其中消息需要广播到水平可扩展、无状态的应用程序集群中的所有节点,我正在考虑Kafka。由于集群的每个节点都需要接收主题中的所有消息,因此集群的每个节点都需要有自己的消费者组。 这里可以假设消息量不是很高,以至于每个节点都无法处理所有消息。 为了用Kafka实现这一点,当从主题消费时,我最终会使用消费者流程的instanceId(或某个唯一标识符)作为消费者组id。这将推高消费群体的数
我是Kafka的新手。我看了一眼Kafka文档。似乎分派给订阅消费者组的消息是通过将分区与消费者实例绑定来实现的。 在使用Apache Kafka时,我们应该记住一件重要的事情,即同一消费者组中的消费者数量应该小于或等于所使用主题中的分区数量。否则,将不会收到来自主题的任何消息。 在非prod环境中,我没有配置主题分区。在这种情况下,Kafka是否只有一个分区。如果我启动共享同一组的多个消费者并向
因此,我有一个AWS动态流,在这里我为多个消费者发布事件。对于大多数人来说,接收热门数据很重要,这意味着他们中的许多人可能会同时轮询和读取最新数据。根据AWS文档,增加分片的数量将提高并行度,而每秒读取的数量最多为5次/秒。我的问题是是否(以及如何?)添加更多的碎片是否有助于解决我的所有消费者都是最新的并试图从同一个碎片读取新的传入数据的情况?似乎这种每秒读取数限制自动对您可以拥有的消费者数量进行
我了解到,每个kinesis流可以有多个消费者应用程序。 http://docs.aws.amazon.com/kinesis/latest/dev/developing-consumers-with-kcl.html 但是,我听说你只能在每个分片的消费者上有。这是真的吗?我找不到任何留档来支持这一点,我无法想象如果多个消费者从同一个流中阅读会是什么样子。当然,这并不意味着生产者需要为不同的消费者
我有一个相当原始的流用例:多个生产者和一个消费者周期性地批量处理消息。有时会有多个使用者,这就是为什么我想从“传统”的不可靠队列(rpush/lrange/ltrim)切换到流。 实际上有两个相关的问题: > 必须先通过创建消费者组,然后才能从中创建。每次一个新的消费者开始(使用随机名称)时,它都会被添加到消费者列表中,但即使在流程结束后,它仍会保留在那里。我的理解是,在这种情况下,我需要将所有挂
相反,我需要做的是将更改为新的内容,然后它将从最早的偏移量恢复。 会不会有其他的犯罪行为? 更新 根据我的理解,这看起来像是每次auto commit enable为false时,它都将提交偏移量。这是Camel Kafka组件的一个特性,因为即使启用了自动提交,它也将在x条消息之后同步
提前谢谢你。