关于亚马逊网络服务:Kinesis 客户端库:一个流的多个工作人员

Kinesis Client Library : multiple workers for a stream

我有一个 .war,其中有一个 Kinesis 应用程序,它处理包含单个分片的流。我们在生产中部署了两个 war 实例。结果,我最终会得到两个工人在一个带有单个分片的流上工作。处理此问题的推荐方法是什么?我尝试在本地开发机器上部署两次 war ,从某种意义上说,每条记录只处理一次似乎很好。我知道 AWS 建议每个分片一个实例。从他们的文档中:

1
Typically, when you use the KCL, you should ensure that the number of instances does not exceed the number of shards (except for failure standby purposes). Each shard is processed by exactly one KCL worker and has exactly one corresponding record processor, so you never need multiple instances to process one shard.

你可能大部分时间都很好。
KCL 将为您处理。

http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-ddb.html

你想检查一个工人在处理一些记录之后但在检查点之前是否死亡的情况。在这种情况下,接管的工作人员将重新处理一些记录(从上一个检查点开始)。
您的应用程序可以处理记录的再处理吗?

请参阅:http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-duplicates.html