Dmitriy Kononov
Обсудим задачуСвязаться

Новости и разборы

Python и демоны на Vercel, MCP у Fly и Supabase. Когда бэкенду лучше на своём сервере

Vercel открыл Python и фоновые демоны, Fly и Supabase дали агентам MCP-доступ. Считаю, когда платформа оправдана, а когда бэкенду дешевле жить на своём сервере.

На конференции Vercel Ship 15 октября Vercel объявил, что Python у него общедоступен, контейнеры работают как функции, а для фоновых воркеров появились демоны. В ту же неделю Fly.io показал свой MCP-сервер, а Supabase рассказал, как дать вашему приложению собственный MCP-сервер. Смысл у новостей общий: платформы хотят, чтобы у них жил весь бэкенд и чтобы им управлял агент. Для владельца бизнеса вопрос другой: где будет стоять система, сколько она стоит в месяц и что будет, когда тариф изменится.

Что объявили

Vercel 15 октября в блоге описал бэкенды на Vercel: Python, контейнеры и демоны. По их цифрам, Python-бэкенды у них запускают 150 000 команд, а за время беты контейнеров 5 000 команд сделали 150 000 развёртываний. Контейнеры работают как функции на Fluid compute с тарифом Active CPU: ожидание ответа базы или модели не оплачивается. В примере компания Delphi перенесла Python-бэкенд с AWS ECS: десять инженеров без отдельного человека на инфраструктуру и больше 100 выпусков в день.

В тот же день Vercel объявил, что Python на Vercel общедоступен: платформа сама распознаёт FastAPI, Flask и Django, а для очередей, хранилища и моделей даёт Python SDK. Там же Vercel Daemons вышли в публичную бету: контейнеры, которые работают постоянно и сами забирают работу из очереди Vercel, Celery, BullMQ, RabbitMQ, Kafka или из базы.

21 октября Vercel добавил маршрутизирующий middleware на Python: он отрабатывает до основного приложения и умеет переписать запрос или перенаправить его. А 23 октября в CLI появилось управление расходами: команда vercel budgets показывает траты и бюджет, флаг --pause останавливает production-развёртывания всех проектов, когда расход доходит до 100 %.

Fly.io 23 октября представил Fly MCP Server: один MCP-сервер, через который агент работает и с песочницами Sprites, и с боевыми Fly Machines. Sprite это Linux-машина со своим диском, и перенос на Machine выглядит как перенос Linux-сервиса между двумя Linux-машинами. В заметке есть цифра из отчёта Databricks по телеметрии Neon: в октябре 2023 года агенты создавали 0,1 % баз, в октябре 2025-го уже 80 %.

Supabase 22 октября показал, как дать приложению собственный MCP-сервер. Клиент вашего приложения заходит из ChatGPT или Claude под своим аккаунтом, каждый вызов инструмента выполняется от его имени, и RLS-политики в Postgres решают, что ему можно. Эта часть мне нравится: права те же, что в приложении, и никакого сервисного ключа.

Пример: производство и счёт в конце месяца

Производственная компания считает заказы: программа ходит по сетевым папкам с конструкторской документацией по SMB через VPN, сверяет материалы с номенклатурой 1С и переименовывает файлы для лазера. Ни одна из описанных платформ этого не сделает: бэкенд должен стоять внутри сети компании.

Бюджет с паузой полезная кнопка, но посмотрите, что она делает: при 100 % production-развёртывания останавливаются. Для сервисной компании это значит, что сайт с формой заявок встанет в день, когда реклама привела больше людей, чем обычно. На своём сервере счёт одинаковый в любой месяц, а всплеск нагрузки вы увидите в логах.

Как это устроено у меня

Сайт kononov.dev и сервис «Кофе вместе» стоят на одном сервере с 2 ГБ памяти, в Docker за Nginx. У контейнеров жёсткие лимиты памяти, при обновлении старый экземпляр останавливается до запуска нового, а если сборке не хватает памяти, я собираю образ вне сервера и загружаю готовым. «Кофе вместе» при этом написан под рантайм Cloudflare Workers с D1 API поверх локальной SQLite в Docker volume: платформенный рантайм на своём железе и на бесплатных инструментах.

Компании по аренде автомобилей в ЮАР я предложил поставить собственный сервер, потому что логика бронирования и выдачи переросла настройки AmoCRM. Идею поддержали, и за 2025 год система выросла из интеграций в сайт с полным циклом бронирования, приложение для менеджеров и цепочку документов. Во всех случаях код, база, сервер и доступы принадлежат заказчику.

Платформа даёт превью каждого изменения и откат одной кнопкой без админа в штате. Команде из десяти инженеров с сотней выпусков в день, как у Delphi, это оправдано. Vercel Daemons, Fly MCP и MCP-блок Supabase я у себя не разворачивал и сужу по их описаниям.

Что я бы сделал

Посчитать год вперёд: тариф платформы плюс Active CPU плюс демоны против аренды сервера плюс часы на его обслуживание. Разовые доработки у меня стоят около $80 в час, сопровождение оформляется отдельным соглашением, и часы на сервер в этом расчёте нужно учесть честно.

Выписать, что бэкенду нужно из того, чего платформа не даёт: VPN в локальную сеть, SMB, телефонию, долгие процессы с состоянием.

Держать Dockerfile одинаковым для платформы и для своего сервера.

MCP-доступ к своему приложению делать по схеме Supabase: вызовы от имени пользователя и те же проверки прав, что в приложении. В 2023 году я экспериментировал с вызовом функций моделью для консалтинговой компании в Лондоне; сегодня я назвал бы то, что получилось, прототипом MCP-сервера.

О центре системы, который хранит состояние и выполняет процесс, есть статья о сервере как ядре системы. Проекты из этого обзора: «Кофе вместе» и прокат в ЮАР. Кому принадлежат код и сервер, разбираю в обзоре о суверенности по-простому, Docker Compose против Kubernetes здесь, реальное время в обзоре о WebSocket, миграции схемы в обзоре о ветках Supabase и D1. Тяжёлый отчёт и рабочую базу я разделял раньше. Направления: инфраструктура и DevOps и приложение под ваш сценарий. Если вы выбираете, где будет жить бэкенд, напишите, что он должен делать, и я скажу, что выбрал бы сам. Обсудить задачу.