Serwer Cloud dla Django w Europie
Uruchomienie aplikacji Django w Europie to więcej niz wybór najtanszego serwera. Przepisy dotyczace miejsca przechowywania danych, opoznienie dla europejskich użytkowników i zgodność z GDPR wplywaja na wybór hostingu. Ten przewodnik omawia wymagania, oczekiwania i to, jak DCXV cloud sie sprawdza.
Dlaczego hosting w UE ma znaczenie dla Django
Aplikacje Django często przetwarzaja dane użytkowników - formularze, konta, zakupy, zadania API. Zgodnie z GDPR dane osobowe obywateli UE musza być przetwarzane i przechowywane w UE. Korzystanie z serwera w USA dla europejskiej publicznosci stawia cie w prawnej szarej strefie.
Fizyczna bliskosc ma też znaczenie dla wydajności. Serwer w Pradze zapewnia czas odpowiedzi poniżej 20 ms dla większości Europy Centralnej i Zachodniej. Serwer w USA dodaje 80-120 ms.
Minimalne wymagania serwera
Django samo w sobie jest lekkie, ale konfiguracja produkcyjna obejmuje Python, baze danych, serwer WSGI i zazwyczaj odwrotny proxy:
- RAM - Minimum 2 GB dla jednoaplikacyjnego wdrozenia z PostgreSQL na tej samej maszynie. 4 GB zalecane dla ciężkich zapytań ORM lub workerów Celery.
- CPU - 2 vCPU dla umiarkowanego ruchu. 4 vCPU przy równoległych zadaniach w tle.
- Dysk - 20 GB SSD na OS, kod aplikacji i baze danych.
- OS - Ubuntu 22.04 lub Debian 12 to najlepiej przetestowane platformy.
Zalecana konfiguracja DCXV
DCXV prowadzi centra danych Tier III w Czechach i Portugalii, oba w pelni w UE. Plany Cloud VPS zaczynaja sie od 15 EUR/miesiąc i obejmuja wsparcie inżynierów 24/7 bez dodatkowych kosztów.
Dla typowej aplikacji Django w produkcji plan 2 vCPU / 4 GB RAM pokrywa wiekszosc obciazen. Dedykowane serwery bare-metal sa dostepne od 49 EUR/miesiąc.
Zacznij tutaj: https://dcxv.com/data-center#cloud
Przewodnik konfiguracji
Po uruchomieniu serwera DCXV cloud (Ubuntu 22.04) połącz sie przez SSH i wykonaj:
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
Oczekiwana wydajność
Na instancji cloud z 2 vCPU / 4 GB w Pradze typowa aplikacja Django z PostgreSQL może obsluzyc 200-400 zapytań na sekunde dla prostych widoków odczytu. Czasy odpowiedzi dla buforowanych stron pozostaja poniżej 10 ms. Opoznienie z Frankfurtu, Warszawy lub Wiednia do serwera wynosi zazwyczaj 5-18 ms.
To oczekiwania dla sprzętu tej klasy, a nie pomiary z naszego laboratorium. Traktuj je jako punkt wyjścia do doboru rozmiaru i zmierz własne obciążenie: realne liczby zależą od twoich danych, zapytań i tuningu znacznie bardziej niż od dostawcy.
