Python на VPS: коротко и с данными
Конспект страницы: 4 раздела коротко, данные на 14 октября 2026 и ответы на 4 вопроса. Полный разбор с примерами: Python на VPS.
Коротко
Приложение на Python на VPS запускают не командой в терминале, а службой systemd: она поднимает процесс при старте сервера и перезапускает после сбоя. Снаружи ставят Nginx, который держит сертификат и отдаёт статику. Схема без неожиданностей: systemd держит процесс, Nginx принимает запросы.
Конспект по разделам
Из каких частей состоит запуск
Рабочая установка состоит из четырёх частей, и каждая отвечает за своё. Два правила, которые экономят вечер отладки. Первое: приложение слушает локальный адрес, а не все интерфейсы, тогда к нему нельзя обратиться минуя Nginx.
Сколько рабочих процессов держать
Отправная точка для синхронных приложений это удвоенное число ядер плюс один. Дальше считают память. Проверка простая: запустите приложение, посмотрите фактический вес одного процесса, умножьте на желаемое число и сравните с памятью тарифа за вычетом базы и системы.
- Каждый процесс несёт свою копию.
- Асинхронное приложение считается иначе.
- Лимит ставится явно.
- Ядра важнее не количеством, а частотой.
Как запускать ваше приложение
Ответьте на три вопроса, и получится схема под ваш тип приложения. Выбор схемы зависит от типа приложения и от того, сколько у вас ядер. Три вопроса
Что ломается после запуска
Приложение, которое работает на ноутбуке, на сервере сталкивается с другими условиями. По частоте проблем: Журнал смотрите через журнал системы Служба systemd пишет вывод приложения в общий журнал, и там видно и падение, и причину. Отдельный файл журнала для этого не нужен, а ротацию общего журнала система делает сама.
- Процесс не поднялся после перезагрузки.
- Утечка памяти в рабочем процессе.
- Длинная задача блокирует запросы.
- Переменные окружения потеряны.
Данные
| Часть | Зачем |
|---|---|
| Виртуальное окружение проекта | Библиотеки проекта не смешиваются с системными |
| Gunicorn или uvicorn | Держит рабочие процессы приложения |
| Служба systemd | Автозапуск, перезапуск после падения, журнал |
| Nginx снаружи | Сертификат, статика, ограничение частоты запросов |
Данные на 14 октября 2026.
Вопросы и ответы
Нужен ли Nginx, если приложение само отдаёт HTTP?
Нужен: он держит сертификат, отдаёт статику и ограничивает частоту запросов. Приложение при этом не смотрит в интернет напрямую.
Сколько памяти занимает процесс Django?
Обычно 80-200 МБ в зависимости от библиотек. Точный вес смотрят в списке процессов на своём сервере.
Как сделать, чтобы приложение поднималось после перезагрузки?
Описать его службой systemd и включить в автозапуск. Проверяют принудительной перезагрузкой сервера, а не доверием к настройке.
Где хранить пароли и ключи приложения?
В файле окружения с правами только для своего пользователя, а не в коде и не в командной строке запуска.