Jest konkretny moment, w którym zarządzana baza danych przestaje być wygodna, a zaczyna być ścianą. Chcesz rozszerzenia, którego warstwa nie oferuje. Chcesz zobaczyć rzeczywisty plan zapytania i dostroić work_mem. Chcesz superusera. Usługa zarządzana to świetny domyślny wybór aż do chwili, gdy musisz być właścicielem rzeczy — i wtedy VPS z pełnym rootem jest uczciwą odpowiedzią.
Ta strona jest o poprawnym uruchomieniu własnego PostgreSQL lub Redis i o jasności co do tego, gdzie współdzielona maszyna jest właściwym wyborem, a gdzie nie.
Czego baza danych naprawdę potrzebuje
Bazy danych dbają o dwie rzeczy, o które serwer gier nie dba: pamięć na zbiór roboczy i I/O dysku. Zgrubny kształt:
- Jedna aplikacja — instancja Postgres (lub Redis) plus usługa backendu. Zbiór roboczy to zwykle 1,7–2 GB. Small (8 $) obsługuje to bez dramatu.
- Kilka aplikacji lub realna produkcyjna współbieżność — więcej połączeń, większe cache, zadania w tle. Medium (12 $) daje Ci zapas.
- Inne maszyny muszą ją osiągać — chcesz stabilnego, routowalnego adresu, więc plan z dedykowanym IPv4 (Small-IP 16 $ wzwyż). Więcej o tym niżej.
Redis jest jeszcze lżejszy — jest ograniczony pamięcią, więc dobierz plan do swojego zbioru danych plus narzut i gotowe. Postgres to ten, który nagradza odrobinę strojenia.
Prawdziwy powód, by hostować samodzielnie: kontrola
To tutaj VPS zarabia na swoje miejsce. Na własnej maszynie dostajesz:
- Cały
postgresql.conf—shared_buffers,work_mem,max_connections, ustawienia WAL, wszystko to, dostrojone do Twojego obciążenia zamiast domyślnych dostawcy. - Dowolne rozszerzenie.
pgvectordo osadzeń i wyszukiwania semantycznego,PostGISdo geoprzestrzeni,TimescaleDBdo szeregów czasowych,pg_cron,pg_stat_statements— instaluj, czego potrzebujesz. Warstwy zarządzane często ograniczają listę rozszerzeń lub bramkują ją za wyższym planem. - Superuser i system pod nim. Możesz przenieść katalog danych, dostroić jądro, uruchamiać
pg_dumpwe własnym harmonogramie i skonfigurować replikację strumieniową na inną maszynę, jeśli chcesz.
Jeśli nic z tego nie ma dla Ciebie znaczenia, zarządzana baza jest naprawdę w porządku i powinieneś jej użyć. Ta strona jest dla przypadku, gdy ma.
Gdzie współdzielona maszyna jest złym narzędziem
Wprost: VPS ze współdzielonym vCPU nie jest zbudowany pod ciężki OLTP — setki transakcji na sekundę z zapisami krytycznymi czasowo. To obciążenie żyje lub umiera na gwarantowanym I/O dysku i stałym zegarze, a plany współdzielone nie obiecują żadnego. Jeśli to Ty, chcesz dedykowanego sprzętu, i wolimy powiedzieć Ci teraz, niż patrzeć, jak Twoja latencja p99 zawstydza nas oboje.
Dla znacznie częstszego przypadku — bazy za jedną aplikacją, narzędzia wewnętrznego, magazynu analitycznego, cache — plan współdzielony jest dokładnie właściwy.
Kopie zapasowe nie są opcjonalne
Self-hosting oznacza, że kopie zapasowe to Twoje zadanie, a jedyna zasada brzmi: rób je, zanim będą potrzebne. Dla Postgresa pg_dump w cronie dla kopii logicznych lub archiwizacja WAL dla odzyskiwania do punktu w czasie dla czegokolwiek, na czym naprawdę Ci zależy. Wysyłaj zrzuty poza maszynę — do magazynu obiektowego lub na inny serwer — by martwy dysk nie zabrał kopii ze sobą. Przetestuj przywracanie przynajmniej raz. Kopia, której nigdy nie przywróciłeś, to nadzieja, nie kopia.
Pozwalanie innym serwerom się łączyć
Jeśli baza obsługuje tylko aplikację na tej samej maszynie, zwiąż ją z localhost i gotowe — nic do wystawiania. W chwili, gdy inna maszyna potrzebuje wejść, dwie rzeczy się zmieniają:
- Potrzebujesz stabilnego, routowalnego adresu — to plan z dedykowanym IPv4 (Small-IP 16 $, Medium-IP 20 $). Plany NAT współdzielą adres, co jest w porządku dla ruchu wychodzącego, ale nie dla bycia bazą, do której inne serwery się łączą.
- Odgradzasz ją zaporą mocno. Otwórz 5432 (lub 6379) tylko dla konkretnych IP, które go potrzebują, nigdy dla
0.0.0.0/0, i wymagaj TLS. Otwarty port Postgresa w publicznym internecie zostaje znaleziony w kilka minut.
Wybór planu
| Konfiguracja | Plan |
|---|---|
| Baza za jedną aplikacją, tylko localhost | Small (8 $) |
| Kilka aplikacji / produkcyjna współbieżność | Medium (12 $) |
| Inne serwery muszą się łączyć | Small-IP (16 $) / Medium-IP (20 $) |
| Ciężki OLTP, setki TPS | dedykowany sprzęt, nie współdzielony VPS |
Większość samodzielnie hostowanych baz zaczyna na Small i wyrasta na Medium lub plan z dedykowanym IP, gdy przejmuje więcej aplikacji lub zewnętrznych klientów.
Dlaczego tutaj
Pełny root oznacza, że to Twoja baza aż do dna — każda linia konfiguracji, każde rozszerzenie, Twój własny harmonogram kopii, żadnej warstwy decydującej, co wolno Ci zainstalować. Płatność jest kryptowalutą (USDC lub USDT na Base, Ethereum lub Polygon), bez KYC, bez dokumentów. Root w około 60 sekund po płatności, a Postgresa przyjmującego połączenia możesz mieć kilka minut później.
Uczciwe podsumowanie: hostuj samodzielnie, gdy chcesz kontroli — rozszerzenia, strojenie, superuser — i gdy Twoje obciążenie jest umiarkowane. Dla bazy małej lub średniej aplikacji plan współdzielony jest właściwym narzędziem. Dla setek TPS OLTP krytycznego czasowo — nie jest, i to powiemy. Gotowy? Wybierz plan.
Komentarze
Brak komentarzy. Bądź pierwszy.