Я успешно настроил API-шлюз Kinesis Proxy. Но я не могу понять, как равномерно распределить записи по нескольким осколкам.
Вот пример использования:
у нас большой объем обрабатываемых веб-крючков (большой объем = миллионы каждый день)
эти веб-хуки обращаются к API Gateway (с помощью вызова POST), API Gateway отправляет информацию / json-body в Kinesis, а лямбда обрабатывает поток Kinesis.
Веб-хуки исходят от третьей стороны, и мы не можем контролировать содержимое тела или заголовков
Я использую только функциональность putRecords
.
Я знаю, что мне нужно добавить какой-нибудь генератор случайных чисел или итератор Shard в шаблон отображения в API Gateway, но я не уверен, как именно.
{
"StreamName": "webhook_queue",
"Data": "$util.base64Encode($input.json('$'))",
"PartitionKey": "<HOW DO I MAKE THIS ITERATE THROUGH SHARDS!>"
}