Я не уверен, какую технологию вы используете, но правильно ли вы распределяете потоки и / или пытаетесь найти позицию 0 в потоке, прежде чем пытаться читать снова?
Функция лямбда не гарантирует чистого запуска. Это на самом деле функция повторного использования предыдущего контейнера, который может содержать состояние из предыдущего вызова
После выполнения лямбда-функции AWS Lambda поддерживает
контекст выполнения в течение некоторого времени в ожидании другой лямбды
вызов функции. По сути, сервис останавливает выполнение
контекст после завершения лямбда-функции и оттаивания контекста для
повторное использование, если AWS Lambda выбирает повторно использовать контекст, когда Lambda
функция вызывается снова. Этот подход повторного использования контекста имеет
следующие последствия:
Любые объявления в вашем коде функции Lambda (вне обработчика
код, см. Модель программирования) остается инициализированным, обеспечивая дополнительные
оптимизация, когда функция вызывается снова. Например, если ваш
Лямбда-функция устанавливает соединение с базой данных, а не
восстановление соединения, исходное соединение используется в
последующие вызовы. Мы рекомендуем добавить логику в ваш код для проверки
если соединение существует до его создания.
Каждый контекст выполнения предоставляет 512 МБ дополнительного дискового пространства в
Каталог / tmp. Содержимое каталога остается при выполнении
контекст заморожен, предоставляя временный кеш, который можно использовать для
несколько вызовов. Вы можете добавить дополнительный код, чтобы проверить, имеет ли кеш
данные, которые вы сохранили. Для получения информации об ограничениях развертывания см.
AWS Lambda Limits.
Фоновые процессы или обратные вызовы, инициированные вашей лямбда-функцией.
который не завершился, когда функция закончила возобновление, если AWS Lambda
выбирает повторно использовать контекст выполнения. Вы должны убедиться, что любой
фоновые процессы или обратные вызовы (в случае Node.js) в вашем коде
завершены до выхода кода.