Servidor Cloud para Django na Europa
Executar uma aplicação Django na Europa vai alem de escolher o servidor mais barato. Regras de residência de dados, latência para usuários europeus e conformidade com o GDPR afetam a sua escolha de hospedagem. Este guia cobre o que você precisa, o que esperar e como o DCXV cloud se encaixa.
Por que o hosting na UE importa para Django
Aplicações Django frequentemente lidam com dados de usuários - formulários, contas, compras, requisições de API. Sob o GDPR, dados pessoais de cidadaos da UE devem ser processados e armazenados dentro da UE. Usar um servidor nos EUA para uma audiência europeia coloca-o numa zona cinzenta legal.
A proximidade física também importa para o desempenho. Um servidor em Praga entrega tempos de ida e volta abaixo de 20 ms para a maior parte da Europa Central e Ocidental. Um servidor nos EUA adiciona 80-120 ms a mais.
Requisitos mínimos do servidor
O Django em si e leve, mas um setup de produção inclui Python, um banco de dados, um servidor WSGI e geralmente um proxy reverso:
- RAM - Mínimo 2 GB para implantação de uma única aplicação com PostgreSQL na mesma máquina. 4 GB recomendado para consultas ORM intensivas ou workers do Celery.
- CPU - 2 vCPUs lidam com tráfego moderado. 4 vCPUs se esperar tarefas em segundo plano concorrentes.
- Disco - 20 GB SSD para OS, codigo da aplicação e banco de dados.
- OS - Ubuntu 22.04 ou Debian 12 sao as plataformas mais testadas.
Configuração DCXV recomendada
O DCXV opera data centers Tier III na Chéquia e em Portugal, ambos completamente dentro da UE. Os planos Cloud VPS comecem em 15 EUR/mês e incluem suporte de engenheiros 24/7 sem custo adicional.
Para uma aplicação Django tipica em produção, o plano 2 vCPU / 4 GB RAM cobre a maioria das cargas de trabalho. Servidores dedicados bare-metal estão disponíveis a partir de 49 EUR/mês.
Comece aqui: https://dcxv.com/data-center#cloud
Guia de configuração
Após provisionar seu servidor DCXV cloud (Ubuntu 22.04), conecte-se via SSH e execute:
apt update && apt install -y python3.10 python3-pip python3-venv postgresql nginx
pip3 install gunicorn
python3 -m venv /srv/myapp/venv
source /srv/myapp/venv/bin/activate && pip install django gunicorn psycopg2-binary
gunicorn --workers 3 --bind unix:/run/myapp.sock myapp.wsgi:application
Expectativas de desempenho
Em uma instância cloud com 2 vCPU / 4 GB em Praga, uma tipica aplicação Django com PostgreSQL pode lidar com 200-400 requisições por segundo para views simples de leitura. Os tempos de resposta para páginas em cache ficam abaixo de 10 ms. A latência de Frankfurt, Varsóvia ou Viena para o servidor e tipicamente de 5-18 ms.
Estas são expectativas para hardware desta classe, não medições do nosso próprio laboratório. Use-as como ponto de partida para o dimensionamento e meça a sua própria carga: os números reais dependem dos seus dados, das suas consultas e do seu tuning muito mais do que do fornecedor.
