Проверяет понимание задержки первого запуска serverless-функции и способов её минимизации в AWS Lambda.
Cold start — это дополнительное время, которое AWS Lambda тратит на подготовку окружения перед выполнением вашего кода. Когда функция вызывается впервые или после долгого простоя, у Lambda нет готового контейнера, поэтому платформа создаёт новый: выделяет микро-VM, скачивает код, запускает runtime и выполняет код инициализации вне обработчика.
После этого контейнер остаётся «тёплым» некоторое время и обслуживает последующие вызовы без задержки — это warm start.
// Плохо: тяжёлая инициализация на каждый cold start
const db = require('pg');
const client = new db.Client({ connectionString: process.env.DB });
// Лучше: переиспользовать соединение между вызовами
let client;
exports.handler = async (event) => {
if (!client) {
client = new db.Client({ connectionString: process.env.DB });
await client.connect();
}
return client.query('SELECT 1');
};Cold start критичен для latency-чувствительных API и интерактивных приложений, но почти не важен для фоновых задач и batch-обработки.
Итог: cold start — неизбежная особенность serverless, и её стоит оптимизировать только там, где задержка реально влияет на пользователя.
Уровень
Рейтинг:
4
Сложность:
5
Навыки
CI/CD
Node.js
Ключевые слова
Подпишись на Node.js Developer в телеграм