У меня есть .war, в котором у нас есть приложение Kinesis, которое обрабатывает поток, содержащий один осколок. Мы развертываем два экземпляра войны в производстве. В результате я бы получил двух рабочих, работающих над одним потоком с одним осколком. Каков рекомендуемый способ решения этой проблемы? Я попытался развернуть две войны на своей машине разработчика локально, и, похоже, это нормально в том смысле, что каждая запись обрабатывается только один раз. Я знаю, что AWS рекомендует по одному экземпляру на сегмент. Из их документов:
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.