hostprofi.ru
Подобрать хостинг
Термин·буква S

Serverless

краткое определение

Serverless — модель облачных вычислений, при которой код исполняется в ответ на события без управления серверами. Провайдер автоматически масштабирует функции и тарифицирует только время исполнения.

Serverless (бессерверные вычисления) — модель, при которой разработчик деплоит код (функцию), а провайдер облака обеспечивает инфраструктуру: запуск контейнера, масштабирование, балансировку. Серверы существуют, но администрирование полностью скрыто.

Как работает

Основная единица — Function as a Service (FaaS). Функция запускается по триггеру: HTTP-запрос, событие в очереди (SQS, Pub/Sub), изменение в базе данных, расписание (cron). Время холодного старта (cold start) — от 100 мс до нескольких секунд в зависимости от runtime и размера функции.

Биллинг по invocations и времени исполнения в миллисекундах. AWS Lambda: первые 1 млн вызовов в месяц бесплатно, далее $0.20 за 1 млн вызовов + $0.0000166667 за 1 ГБ·с. Нулевое потребление = нулевая стоимость (idle cost отсутствует).

Ограничения: максимальное время исполнения (AWS Lambda — 15 минут), ограниченная память (до 10 ГБ на AWS), stateless-природа (состояние хранится во внешних системах — Redis, DynamoDB).

История

AWS Lambda появился в ноябре 2014 года — первая коммерческая FaaS-платформа. В 2016 году Google выпустил Cloud Functions, Microsoft — Azure Functions. В 2018 году проект Knative принёс serverless в Kubernetes. Стандарт CloudEvents (CNCF, 2018) унифицировал формат событий между провайдерами.

Варианты платформ

  • AWS Lambda — пионер рынка, 30+ runtime (Node.js, Python, Go, Java, C#).
  • Google Cloud Functions / Cloud Run — Functions для FaaS, Run для контейнеров.
  • Azure Functions — интеграция с Azure Event Grid и Service Bus.
  • Cloudflare Workers — V8 isolates, холодный старт ~0 мс, работает на edge.
  • Yandex Cloud Functions — российский аналог с биллингом в рублях.

Связь с хостингом

Serverless не заменяет традиционный VPS или выделенный сервер: базы данных, долгоживущие процессы, websocket-соединения плохо вписываются в FaaS-модель. Типичный сценарий: serverless для обработки событий (вебхуки, ресайз изображений, API-эндпоинты с редкими запросами) + VPS для stateful-сервисов.

Ключевые отличия от похожих терминов

PaaS (Platform as a Service) предоставляет платформу для приложений с управлением сервером провайдером, но приложение работает постоянно. Serverless запускается только по запросу. Контейнеры требуют явного управления жизненным циклом; FaaS абстрагирует это полностью.

Модели Serverless

FaaS (Function as a Service): AWS Lambda, Yandex Cloud Functions, Azure Functions. BaaS (Backend as a Service): Firebase, Supabase. Scaling от 0 до тысяч экземпляров за секунды. Оплата за фактические вызовы (AWS Lambda: $0.20 за 1 млн вызовов + время выполнения).

Cold Start и ограничения

Cold start: первый вызов после бездействия — запуск нового экземпляра функции (100–500 мс для Node.js, 2–5 секунд для Java). Ограничения: максимальное время выполнения (AWS Lambda: 15 минут), памяти (10 ГБ), размера пакета. Не подходит для long-running задач.

Serverless в российском хостинге

Yandex Cloud Functions — поддерживает Node.js, Python, Go, Java, PHP, Bash. Serverless containers — Docker-образы без управления инфраструктурой. FaaS для: webhook-обработчиков, resize изображений, периодических задач. Снижает стоимость при нерегулярной нагрузке.

Другие термины