Разделы

Serverless-функции

Serverless-функции — основная единица вычислений на платформе. Каждая функция — изолированный обработчик, который получает event и context и возвращает результат — независимо от того, вызываете ли вы её из редактора, фоновых задач или HTTP-маршрутов на шлюзе.

Кнопка Запустить в тестовой панели передаёт ваш JSON напрямую как объект event, без обёртки API Gateway. HTTP-маршруты, напротив, передают событие в стиле API Gateway со строковым body. Обработчики обычно различают оба случая — typeof event.body === 'string' в Node.js и аналоги в других рантаймах, — чтобы работали оба пути вызова.

Как создавать функции

  • Через UI — нажмите + Новая функция на странице функций. При необходимости загрузите .zip-архив с кодом.
  • Перетаскивание — перетащите файлы или папки в дерево файлов в сайдбаре редактора.

Конфигурация функции

ПараметрПо умолчаниюОписание
Handlerindex.handlerТочка входа в формате файл.экспорт.
Runtimenodejs22Node.js 22, Python 3.12 или Go 1.22
Timeout5 000 msМаксимальное время выполнения, после которого платформа останавливает функцию.
Memory256 MBЛимит памяти контейнера функции. По умолчанию 256 МБ; минимум — 64 МБ, максимум — 2048 МБ (2 ГБ).
NetworkВключите, чтобы разрешить исходящие HTTP/TCP-соединения из функции. Работает только если на сервере также задано <code>ALLOW_NETWORK_FUNCTIONS=true</code> (по умолчанию выключено); при выключенном серверном флаге сетевой запрос функции принудительно переводится в режим без сети.
СлоиНеобязательный список идентификаторов слоёв каталога, подключённых к функции (см. страницу «Слои»).
Вариант образа (Node.js)lite<code>lite</code> (по умолчанию) или <code>full</code> — выбирает контейнерный образ Node.js. Используйте <code>full</code>, когда нужен более тяжёлый стек с браузерными возможностями.

Тёплые контейнеры

Нажмите Развернуть, чтобы заранее прогреть контейнеры функции. Тёплые контейнеры держат внутри работающий HTTP-сервер, поэтому последующие вызовы переиспользуют запущенный процесс и пропускают работу холодного старта — создание контейнера, запуск рантайма и загрузку обработчика.

Контейнеры сверх минимума на функцию утилизируются после 5 минут простоя, а последний оставшийся контейнер останавливается после 10 минут простоя. Оба порога настраиваются переменными HOT_LAMBDA_TTL_MS и HOT_LAMBDA_MAX_IDLE_TTL_MS.

Сервер должен работать с ENABLE_HOT_LAMBDAS=true; иначе кнопка «Развернуть» сообщит, что тёплые контейнеры не включены.

Тестовая панель

Правая панель редактора содержит вкладки для запуска и настройки функции:

  • Запуск — синхронный вызов, где ваш JSON передаётся как event. Включите Поток, чтобы получать поток Server-Sent Events на поддерживаемых рантаймах.
  • Настройки — обработчик, таймаут, доступ в сеть, вариант образа Node.js, слои и переменные окружения.
  • Трассировки — недавние запуски этой функции (та же модель трасс, что и на странице «Выполнения»).
  • AI — помощник прямо в редакторе; доступен, если включён в вашей установке.