Вы превышаете ограничение времени ожидания шлюза API (30 секунд) вместо того, чтобы отключить функцию Lambda.
Это 30-секундное время ожидания шлюза API является жестким пределом и не может быть увеличено.Для долго выполняющихся процессов рассмотрите возможность сделать функцию асинхронной, возможно, используя механизм организации очередей, такой как SQS.
Примечание: даже после истечения времени ожидания шлюза API через 30 секунд (возвращая вызов HTTP), делаетне обязательно означает, что лямбда-функция завершается в одно и то же время.Лямбда-функция может продолжить обработку после 30-секундной отметки, вплоть до собственного предела времени ожидания.
Таким образом, Лямбда-функция могла бы завершить оставшуюся часть своих вызовов POST, даже после того, как клиентский вызов API вернулся с ошибкой.Это может быть еще одной причиной, по которой вы видите много дубликатов - каждый раз, когда вызывается API, функция, возможно, запускается до конца, несмотря на сообщение об ошибке.
(примечание: если функция не идемпотентна, обычно это хорошопопрактикуйтесь, чтобы лямбда-функции обнаруживали, если они вызываются несколько раз с одними и теми же данными, и корректно обрабатывают такие сценарии, чтобы избежать дублирования.)