Сервер под Telegram-бота и парсер: сколько ресурсов реально нужно
Считаем нагрузку для Python/Node.js ботов и парсеров. Когда хватит VPS за 200 рублей, а когда нужен Dedicated.
Для простого Telegram-бота на Python/Node.js достаточно VPS за 200–300 ₽/мес (1 vCPU, 1 ГБ RAM). Для бота с базой данных — 2 vCPU, 2–4 ГБ RAM (~500 ₽/мес). Для парсеров на Selenium/Playwright — 2–4 vCPU, 4–8 ГБ RAM (~800–1500 ₽/мес) из-за потребления памяти headless-браузером.
- Простой бот (echo, кнопки, webhook): 1 vCPU, 1 ГБ RAM — хватит VPS за 200–300 ₽/мес.
- Бот с СУБД и бизнес-логикой: 2 vCPU, 2–4 ГБ RAM, 40 ГБ NVMe.
- Парсер на Selenium/Playwright: 2–4 vCPU, 4–8 ГБ RAM (headless Chrome жрёт ~500 МБ на вкладку).
- Парсер на requests/aiohttp (без браузера): 1 vCPU, 1–2 ГБ RAM — минимальный VPS.
Telegram-бот: от echo до продакшена
Простейший бот на aiogram или node-telegram-bot-api в режиме webhook потребляет 30–80 МБ RAM и практически не нагружает CPU. Для него хватит самого дешёвого VPS — 1 ядро, 512 МБ RAM.
Бот с бизнес-логикой (обработка платежей, SQLite/PostgreSQL, очереди задач через Celery/Bull) — уже 200–500 МБ RAM плюс потребление СУБД. Здесь нужно 2 ГБ RAM минимум.
Бот с ML (классификация изображений, NLP): 4+ ГБ RAM, иногда GPU. Модели типа BERT-small или DistilBERT занимают 300–500 МБ RAM.
# Деплой бота через systemd (простейший вариант)
cat > /etc/systemd/system/mybot.service << 'EOF'
[Unit]
Description=Telegram Bot
After=network.target
[Service]
Type=simple
User=bot
WorkingDirectory=/opt/mybot
ExecStart=/opt/mybot/.venv/bin/python main.py
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
systemctl enable --now mybotПарсеры: requests vs Selenium
Парсеры на requests/httpx/aiohttp (без рендеринга JavaScript) — лёгкие. Один процесс занимает 50–100 МБ RAM, нагрузка на CPU минимальна. Ограничения — скорость сети и rate limits сайтов.
Парсеры на Selenium/Playwright (headless Chrome) — тяжёлые. Каждая вкладка браузера — 300–500 МБ RAM. 10 параллельных вкладок — уже 3–5 ГБ. Плюс CPU для рендеринга страниц.
Для массового парсинга (1000+ страниц в час) рассмотрите: 1) aiohttp + BeautifulSoup для статичных страниц, 2) Playwright с пулом вкладок для SPA, 3) Scrapy для структурированного парсинга.
Проверенные серверы от надежных провайдеров
Timeweb Cloud
Cloud Start
CPU
1 ядер • 3.3 ГГц
RAM
1 ГБ
Диск
15 ГБ NVMe
Канал
200 Мбит/с
299 ₽/мес
Часто задаваемые вопросы (FAQ)
Можно ли запустить Telegram-бота на бесплатном VPS?
Oracle Cloud Free Tier даёт бесплатный VPS (1 vCPU, 1 ГБ RAM), но регистрация из России затруднена. Из российских бесплатных вариантов — тестовые периоды Timeweb (3 дня) или Aeza (пробный баланс).
Webhook или polling для бота?
Webhook — для продакшена (меньше нагрузки, мгновенная реакция). Polling — для разработки (проще настроить, не нужен HTTPS). На VPS с публичным IP используйте webhook.