Der er et specifikt øjeblik, hvor en managed database holder op med at være bekvem og begynder at være en mur. Du vil have en extension, tieren ikke tilbyder. Du vil se den faktiske query plan og tune work_mem. Du vil have en superuser. En managed tjeneste er en fantastisk standard lige indtil du har brug for at eje tingen — og så er en VPS med fuld root det ærlige svar.
Denne side handler om at køre din egen PostgreSQL eller Redis korrekt og være klar om, hvor en delt boks er det rette valg, og hvor den ikke er.
Hvad en database faktisk har brug for
Databaser bekymrer sig om to ting, en spilserver ikke gør: hukommelse til working set og disk-I/O. Den grove form:
- Én app — en Postgres- (eller Redis-) instans plus en backend-tjeneste. Working set er som regel 1,7-2 GB. Small ($8) håndterer det uden drama.
- Et par apps, eller rigtig produktions-concurrency — flere forbindelser, større caches, baggrundsjobs. Medium ($12) giver dig råderummet.
- Andre maskiner skal nå den — du vil have en stabil, routerbar adresse, så en dedikeret-IPv4-plan (Small-IP $16 og op). Mere om det nedenfor.
Redis er endnu lettere — den er hukommelsesbundet, så dimensionér planen til dit datasæt plus overhead, og du er færdig. Postgres er den, der belønner lidt tuning.
Den rigtige grund til at selv-hoste: kontrol
Det er her, en VPS fortjener sin plads. På din egen boks får du:
- Hele
postgresql.conf—shared_buffers,work_mem,max_connections, WAL-indstillinger, det hele, tunet til din workload i stedet for en leverandørs standarder. - Enhver extension.
pgvectortil embeddings og semantisk søgning,PostGIStil geospatial,TimescaleDBtil tidsserier,pg_cron,pg_stat_statements— installer, hvad du har brug for. Managed tiers begrænser ofte extension-listen eller gater den bag en højere plan. - Superuser og OS'et under den. Du kan flytte data-mappen, tune kernen, køre
pg_dumppå din egen tidsplan og sætte streaming-replikation op til en anden boks, hvis du vil have den.
Hvis intet af det betyder noget for dig, er en managed database genuint fin, og du bør bruge en. Denne side er til tilfældet, hvor det gør.
Hvor en delt boks er det forkerte værktøj
For at være ligefrem om det: en delt-vCPU-VPS er ikke bygget til tung OLTP — hundredvis af transaktioner i sekundet med latens-kritiske writes. Den workload lever eller dør på garanteret disk-I/O og en stabil clock, og delte planer lover ingen af dem. Hvis det er dig, vil du have dedikeret hardware, og det vil vi hellere sige nu end se din p99-latenstid genere os begge.
Til det langt mere almindelige tilfælde — en database bag én app, et internt værktøj, et analytics-store, en cache — er en delt plan præcis rigtig.
Backups er ikke valgfrie
Selv-hosting betyder, at backups er dit job, og den ene regel er: lav dem, før du har brug for dem. Til Postgres, pg_dump på en cron til logiske backups, eller WAL-arkivering til point-in-time-recovery på alt, du faktisk holder af. Send dumps væk fra boksen — til object storage eller en anden server — så en død disk ikke tager backups med sig. Test en gendannelse mindst én gang. En backup, du aldrig har gendannet, er et håb, ikke en backup.
At lade andre servere forbinde
Hvis databasen kun betjener en app på samme boks, så bind den til localhost, og du er færdig — intet at eksponere. I det øjeblik en anden maskine skal ind, ændrer to ting sig:
- Du har brug for en stabil, routerbar adresse — det er en dedikeret-IPv4-plan (Small-IP $16, Medium-IP $20). NAT-planer deler en adresse, hvilket er fint til udgående, men ikke til at være en database, andre servere ringer ind til.
- Du firewaller den hårdt. Åbn 5432 (eller 6379) kun for de specifikke IP'er, der har brug for den, aldrig til
0.0.0.0/0, og kræv TLS. En åben Postgres-port på det offentlige internet findes på minutter.
At vælge planen
| Opsætning | Plan |
|---|---|
| DB bag én app, kun localhost | Small ($8) |
| Et par apps / produktions-concurrency | Medium ($12) |
| Andre servere skal forbinde ind | Small-IP ($16) / Medium-IP ($20) |
| Tung OLTP, hundredvis af TPS | dedikeret hardware, ikke en delt VPS |
De fleste selv-hostede databaser starter på Small og vokser ind i Medium eller en dedikeret-IP-plan, efterhånden som de tager flere apps eller eksterne klienter på.
Hvorfor her
Fuld root betyder, at det er din database, hele vejen ned — hver config-linje, hver extension, din egen backup-tidsplan, ingen tier, der bestemmer, hvad du må installere. Betaling er krypto (USDC eller USDT på Base, Ethereum eller Polygon), ingen KYC, ingen dokumenter. Root på cirka 60 sekunder efter betaling, og du kan have Postgres til at acceptere forbindelser et par minutter senere.
Den ærlige opsummering: selv-host, når du vil have kontrol — extensions, tuning, superuser — og når din workload er moderat. Til en lille-til-mellem-apps database er en delt plan det rette værktøj. Til hundredvis af TPS af latens-kritisk OLTP er den ikke, og det siger vi. Klar? Vælg en plan.
Kommentarer
Ingen kommentarer endnu. Vær den første.