← Назад к вопросам

Что такое hosting?

1.0 Junior🔥 111 комментариев
#DevOps и инфраструктура

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI30 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Hosting — это услуга предоставления сервера и инфраструктуры для размещения веб-приложений и сайтов в интернете. Backend-разработчик должен разбираться в типах хостинга, выборе провайдера и развёртывании приложений.

Основные типы хостинга

1. Shared Hosting (Виртуальный хостинг)

Несколько сайтов работают на одном сервере, разделяя его ресурсы.

Характеристики:

  • Самый дешёвый вариант ($5-30/месяц)
  • Ограниченные ресурсы (CPU, RAM, bandwidth)
  • Сложно масштабировать
  • Медленная поддержка

Примеры: Bluehost, HostGator, GoDaddy

Когда использовать:

  • Маленькие сайты
  • Блоги
  • Для обучения
  • Низкий трафик

2. VPS (Virtual Private Server)

Выделенная виртуальная машина на физическом сервере.

Характеристики:

  • Полная свобода конфигурации
  • Выделенные ресурсы (но разделяются физически)
  • Требует технических навыков администрирования
  • Дороже ($15-100/месяц)

Примеры: DigitalOcean, Linode, Vultr, Hetzner

# Типичный VPS Node.js setup
ssh root@123.45.67.89
sudo apt update && sudo apt upgrade
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install nodejs
npm install -g pm2
clone repo and deploy
pm2 start app.js

3. Dedicated Hosting

Целый физический сервер только для тебя.

Характеристики:

  • Максимальная производительность
  • Полный контроль
  • Самый дорогой ($100-500+/месяц)
  • Требует опыта администрирования

Когда использовать:

  • Высоконагруженные приложения
  • Тысячи одновременных пользователей
  • Специальные требования безопасности

4. Cloud Hosting (Облачный хостинг)

Ресурсы распределяются автоматически, платишь за использование.

Характеристики:

  • Гибкая масштабируемость (автоматическая)
  • Платишь за реальное использование
  • Pay-as-you-go модель
  • Не нужна администрация (для PaaS)

Типы:

IaaS (Infrastructure as a Service):

  • Виртуальные машины, которыми управляешь ты
  • Примеры: AWS EC2, Google Cloud Compute, Azure VMs
  • Требует конфигурации
// AWS EC2 пример
const AWS = require('aws-sdk');
const ec2 = new AWS.EC2();

// Создать инстанс
ec2.runInstances({
  ImageId: 'ami-0c55b159cbfafe1f0',
  MinCount: 1,
  MaxCount: 1,
  InstanceType: 't2.micro'
}, (err, data) => {
  console.log('Instance running:', data.Instances[0].InstanceId);
});

PaaS (Platform as a Service):

  • Полностью управляемая платформа
  • Примеры: Heroku, Render, Railway, Vercel
  • Просто деплой гит репозитория
# Heroku деплой
heroku login
heroku create myapp
git push heroku main
heroku logs --tail

FaaS (Function as a Service):

  • Серверные функции
  • Примеры: AWS Lambda, Google Cloud Functions
  • Платишь за выполнения
// AWS Lambda функция
exports.handler = async (event) => {
  return {
    statusCode: 200,
    body: JSON.stringify({ message: 'Hello from Lambda!' })
  };
};

5. Контейнеризация (Docker + Kubernetes)

Деплой приложения в контейнерах.

Примеры:

  • Docker + Docker Compose для локального desarrollo
  • Kubernetes для оркестрации контейнеров
  • Managed K8s: AWS EKS, Google GKE, Azure AKS
# Docker Compose для Node.js приложения
docker-compose up -d
# Масштабирование
docker-compose up -d --scale app=3

Выбор хостинга: практические советы

Для стартапа:

1. Начать с Heroku или Railway (быстро, просто)
2. Перейти на DigitalOcean/Hetzner при масштабировании
3. AWS/GCP при нужде в advanced features

Для production:

  • Minimum 2GB RAM (1GB едва хватает)
  • SSD диск (обязательно)
  • CDN для статики (Cloudflare, BunnyCDN)
  • Database отдельно (managed DB сервис)
  • Backup стратегия

Мой personal stack:

- Hetzner Cloud ($4.15/месяц) для VPS
- PostgreSQL managed база
- S3-compatible storage (Hetzner Spaces) для файлов
- Cloudflare для DNS/CDN
- GitHub Actions для CI/CD
- Monitoring: DataDog или New Relic

Деплой Node.js приложения

Рекомендуемая архитектура:

┌─────────────────────────────────────┐
│      Cloudflare (DNS + CDN)         │
└─────────────┬───────────────────────┘
              │
┌─────────────v───────────────────────┐
│     Load Balancer (опционально)     │
└─────────────┬───────────────────────┘
              │
      ┌───────┴────────┐
      │                │
┌─────v──────┐   ┌─────v──────┐
│  Node App  │   │  Node App  │ <- несколько инстансов
│  (PM2)     │   │  (PM2)     │
└─────┬──────┘   └─────┬──────┘
      │                │
      └───────┬────────┘
              │
    ┌─────────v──────────┐
    │  PostgreSQL (managed)
    └────────────────────┘

Ключевые метрики при выборе

  • Uptime SLA — гарантия доступности (99.9%, 99.99%)
  • Bandwidth — трафик (unlimited vs лимитированный)
  • Scaling — как масштабировать (автоматически vs ручно)
  • Support — поддержка (24/7 vs бизнес часы)
  • Security — SSL, файрволл, DDoS защита
  • Backup — система резервных копий
  • Cost — общая стоимость в год

Выбор хостинга зависит от требований приложения. Начинай с простого, масштабируй по необходимости.

Что такое hosting? | PrepBro