Контейнерный рантайм для serverless-функций
Node.js, Python и Go — зависимости на функцию в своём контейнере, привычный POSIX и файловая система без фермы отдельных VM на каждый микросервис.
Нагрузка и где ломается
Почему «один рантайм на всех» усложняет жизнь
Общий интерпретатор — конфликты версий пакетов и случайное глобальное состояние между вызовами.
Для security-ревью хуже, когда несвязанные фичи делят один процесс и память.
Компромиссы
Почему не только «голые» VM
Отдельная VM на каждую мелкую функцию — дорого по ресурсам для небольшой команды.
Чистый PaaS без жёсткой изоляции перекладывает риск на дисциплину в коде приложения.
Как помогает Inquir
Как у Inquir Compute
Каждая функция со своими зависимостями уходит в контейнер — планировщик ставит экземпляры на доступную мощность.
Та же модель для API-Gateway, шагов пайплайна и фоновых задач: одна граница изоляции.
Что получаете
Что это даёт
Повторяемость
Образ ближе к продакшену, чем разовые настройки на хосте.
Зона отказа
Сбой или утечка ограничены инстансом одной функции.
Несколько языков
Node, Python и Go рядом — где уместно по задаче.
Что делать дальше
Как поставлять функцию в контейнере
От кода до запуска без своего Kubernetes.
Код и зависимости
Точка входа и пакеты задаются на уровне функции.
Публикация
Через браузер или API/CLI — артефакт попадает в платформу.
Запуск
Планировщик поднимает контейнеры под нагрузку.
Пример кода
Граница — контейнер
Всё нужное для запуска лежит в образе; снаружи — событие и среда выполнения платформы.
// Platform bundles deploy artifacts; you focus on handler + package manifests.Когда подходит
Когда контейнеры уместны
Когда это уместно
- Конфликтующие библиотеки у разных функций
- Требования изоляции для безопасности и аудита
Когда лучше не трогать
- Крошечные скрипты, где оверхед упаковки важнее изоляции
FAQ
Вопросы и ответы
Есть ли постоянный локальный диск?
По умолчанию файловая система эфемерная. Постоянные данные — во внешние хранилища; тома — если платформа и ваш сценарий это поддерживают.
Как изоляция помогает безопасности?
Отдельный процесс и ФС на функцию сужают зону поражения по сравнению с одним интерпретатором на все сервисы.
У каждой функции свой образ?
У каждой функции своё замыкание зависимостей — чуть больше оверхеда, зато версии воспроизводимы.