我正在尝试将 AWS Kinesis 流用于我们的数据流之一。我想出于操作目的监视流上的待处理消息(根据积压向下游扩展),但无法找到任何在我的流中提供(大约)待处理消息的 API。
这看起来很奇怪,因为消息在 7 天后就会过期,如果生产者和消费者是隔离的并且无法通信,你怎么知道消息即将过期。你如何处理这个问题?
Thanks!
Kinesis 中没有“待处理”消息这样的概念。所有传入的数据都将放置在一个分片上。
您的消费者应用程序应始终处于运行状态,以跟踪流中的更改。应用程序(在 KCL 的帮助下)将继续在后台轮询“Shard Iterator”,因此当新数据到来时您将收到通知。
大致;您可以将 Kinesis 视为一个 FIFO 队列,如果您不弹出消息,消息将在短时间内消失。
如果您的应用程序将在一小时内处理几条消息,您应该考虑更改您的架构。 Kinesis 可能不是适合您的工具。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)