Melsens · Arkitektur · Beslutningsgrundlag Priser verificeret 2026-07-18 · ekskl. moms · kurs ≈ 7 kr/$

Arkitektur, hosting & Website OS

To produktlinjer: isoleret pr. kunde (skræddersyet, salgbar kode) og en delt multi-tenant Website OS (ét kodebase → tusindvis af SMV-sites). Med platform-forklaringer, en fuld 5-vejs arkitektursammenligning (Vercel · Cloudflare · AWS · Google Cloud · Azure) og en live vækstgraf i kr/kunde.

💡 Ord med prikket understregning har en forklaring — hold musen over (eller tab til dem).

01

To produktlinjer — det bærende valg

Produktlinje A

Isoleret pr. kunde

Skræddersyet SaaS/app til nichekunder. Egen container/deployment pr. kunde. Kan sælges/overdrages som kode. Få–snese kunder. Nyt modul = redeploy pr. kunde.

→ §04 nedenfor: modellerne M1–M7
Produktlinje B

Delt Website OS (multi-tenant)

Ét delt kodebase → tusindvis af SMV-sites. 90–95 % delt platform + 5–10 % tenant-config. Nyt modul = ét git-push → alle kunder. Overdragelse = domæne + data + statisk site.

→ §05–§07 nedenfor: Website OS, prissimulering + arkitektur-matrix

Dine fire mål (1–2 mennesker bygger tusindvis · minimal drift · nem skalering · central modul-opdatering til 200+ kunder) peger entydigt på produktlinje B til website-produktet. Container-pr-kunde (A) er rigtigt til skræddersyede leverancer der skal sælges videre — ikke til fabrikken.

02

Hvad beslutningen skal opfylde

K1Isolation pr. kunde K2Nem at skalere K3Nem domæne-tilknytning K4Salgbar / overdragelig K5Fuldt AI-/MCP-styrbar · minimumskrav K6Lav, forudsigelig pris K7Lav driftskompleksitet K8EU / GDPR-hosting
03

Platformene kort — hvad er hvad?

Vercel hosting

Hosting bygget til frontend/Next.js. “Push til git → live side” uden server-opsætning; bedste udvikleroplevelse. Betaler pr. bruger + forbrug.

Cloudflare hosting

Globalt edge-netværk (CDN/DNS/sikkerhed) der kører kode tæt på brugeren via Workers, med egen DB (D1) + storage (R2). Billigst ved skala; ingen egress-gebyr.

Cloudflare for SaaS domæner

Knytter tusindvis af kunde-ejede domæner til din platform med auto-SSL. 100 gratis, så $0,10/domæne/md (op til 50k). Kunden beholder egen DNS; “delegated DCV” = sæt-og-glem.

AWS hyperscaler

Amazons cloud. Til Website OS: CloudFront (CDN) + SaaS Manager (multi-tenant domæner) + Lambda + Aurora Serverless v2. Teknisk kan alt, men egress-gebyr + drift gør den dyrest/tungest her.

Google Cloud hyperscaler

Cloud Run (container) + Load Balancer + Cloud SQL + Certificate Manager. Fast gulv fra LB (~$18) + always-on DB; egress-tung. Cert-maps løser domæner teknisk, men du bygger selv automatikken.

Azure hyperscaler

Front Door (edge) + Container Apps + Postgres Flexible. Stærk EU-compliance, men Front Door tager kun 100 domæner/profil → profil-sprawl ved skala; ingen scale-to-zero-DB.

Neon database

Serverless Postgres. Standard Postgres + scale-to-zero (~$0 idle) + branching. Billigst for mange små DB'er, trivielt at eksportere (pg_dump). Kører på AWS (og tidl. Azure — verificér region).

Payload CMS CMS

Next.js-native, open source (MIT). Admin-UI + versionering + multi-tenant-plugin. Brug som shell, men behold eget block-JSON som kanonisk model. (Ejet af Figma siden 2025.)

Inngest workflows

Durable agent-workflows + kø + human-approval i ét. Suspenderer pipelinen gratis til en godkendelse ankommer. Ingen infrastruktur at drive.

Convex backend

Reaktiv backend med TypeScript-funktioner; stærk til AI-/realtidsapps. Open source + self-host muligt, men mere leverandør-specifik → “medium” lock-in.

04

Produktlinje A (isoleret pr. kunde) — modellerne M1–M7

Dette er produktlinje A: syv kandidat-modeller (M1–M7) til skræddersyede SaaS-leverancer der skal kunne sælges/overdrages som kode. Pris = pr. lille lav-trafik-kunde/md.

ModelPris / kunde / mdIsolationOverdragelseAI / MCPDrift
M1 · Vercel + Neonpush-to-deploy PaaS ~$1–2 deler ét sæde
projekt / blødt1-klik transferstærkmeget lav
M2 · Cloud Run + Neonserverless containere · EU ~$1–3 scale-to-zero
projekt / hårdcontainer + migr.stærklav–middel
M3 · Fly.io + Neonapp-maskiner (containere) ~$3–4 auto-stop
app / hårdlaveste lock-inCLI + Terraformlav
M4 · Cloudflareedge / serverless ~$0–1 deler ét $5-abon.
konto / blødtdata ja, runtime låstmest AI-nativemiddel
M5 · Hetzner VPSDocker Compose · DE/FI ~€7–9 alt-i-alt, EU
VPS / hårdestnul proprietærtvia CLI + IaCOS-drift selv
M6 · KubernetesGKE / AKS / EKS $10 → $100+ namespace → cluster/kunde
namespace / clustermediumfuld via IaCtungest
M7 · Azure ACA + Neonserverless containere · Microsoft ~$1–6 $15–20 m. Azure-egen DB
subscription / hårdsubscription-flytaz + azd + MCPtenant-model tung
stærkt / billigt forbehold svagt / dyrt Søjlebredde = relativ månedlig pris pr. lille kunde (M6 = 100 %).

Anbefaling for produktlinje A (modellerne M1–M7): fabriksstandard = OCI-container + Terraform + Postgres, isolerede konti/projekter pr. kunde fra dag ét. Websites → M1 (Vercel); apps → M2 (Cloud Run)/M3 (Fly); Microsoft-kunder → M7 (Azure ACA); Kubernetes (M6) først ved én stor kunde.

05

Produktlinje B — Website OS: den delte arkitektur

Ét Next.js-kodebase server alle sites. Indhold er data (config-drevet), kode er et delt komponent-bibliotek → nyt modul = ét git-push til alle. MVP på Vercel; migrér til Cloudflare Workers ved ~10k sites.

Kunde-domæner (kunde.dk × N)Vercel-native (MVP) → Cloudflare for SaaS (skala)
Ét delt Next.js-kodebasemiddleware: Host → tenant · ISR + on-demand · config-drevet renderer
Neon — én delt DBtenant_id + Row-Level Security · pgvector (RAG)
Payload CMS + Inngestadmin/versionering · durable agent-workflows + approval-gate
MVP · 0–1.000 sites

Fart & lav drift

Vercel (native domæner, gratis) · Neon delt DB + RLS · Payload som shell · Inngest til pipeline + godkendelse · agenter via AI SDK 6/Mastra (Claude Sonnet). Byg Workers-kompatibelt fra dag ét.

Skala · 10k–100k sites

Konsolidér på edge

Migrér til Cloudflare Workers (én delt Worker) + Cloudflare for SaaS (delegated DCV) + samme Neon-DB. 60 %+ billigere ved ~10k. ISR/on-demand obligatorisk — kan ikke prebuilde 100k sider.

Data: shared DB + RLS (ikke projekt-pr-kunde — det brækker ved ~1.000 på Neon). Overdragelse: domæne + RLS-filtreret data-eksport + statisk HTML — ikke “koden”.

06

Prissimulering — Website OS: 5 arkitekturer, kr/kunde ved vækst

Fem fuldt navngivne arkitekturer sammenlignet. Justér de følsomme antagelser; Vercel og Cloudflare genberegnes live. AWS/GCP/Azure vises som research-forankrede estimater (deres priser reagerer ikke på sliderne — de har faste gulve og trin). Alt er en model, ikke et tilbud.

HTML + JS + CSS + billeder pr. site. Vigtigste driver for Vercel.
Kun Vercel/Cloudflare (de bruger Neon). Det “blødeste” tal — lasttest det.
Tokens for at bygge ét site. Sonnet + batch ≈ $5. Engangs, ikke i grafen.
Faste antagelser: ~3.000 besøg/site · 1 GB transfer/site · 5.000 dynamiske kald/site · domæner: Vercel-native (gratis) / andre: $0,10/hostname.
Arkitektur 100 kunderkr/kunde · kr/md 500 kunderkr/kunde · kr/md 1.000 kunderkr/kunde · kr/md

Vis detaljeret opdeling — Vercel vs. Cloudflare (slider-styret, i $)
Post / md1005001.000

Grafen viser kr/kunde/md (recurring infrastruktur). Robuste konklusioner: Cloudflare er billigst hele vejen; Vercel er næsten fladt (edge-metret skalerer lineært); hyperscalerne starter højt pga. faste gulve (LB/Front Door/always-on-DB) og Azure forbliver dyrest. Under ~1.000 sites er forskellen Vercel↔Cloudflare < ~$200/md → bliv på Vercel for enklere drift; migrationsgevinsten (60 %+) kommer ved ~10.000 sites.

07

Arkitektur-sammenligning (Website OS) — komponenter, prismodel, licens, drift

Egenskab CloudflareWorkers + for SaaS · Neon VercelNext.js på Vercel · Neon Google CloudCloud Run + LB · Cloud SQL AWSCloudFront SaaS Mgr + Lambda · Aurora AzureFront Door + Container Apps · Postgres
Custom domæner ved skala bedst ét API, $0,10/hostname, delegated DCV = sæt-og-glem (cap 50k) nem native, gratis, ubegrænset — men ikke purpose-built til BYO ved 10k+ DIY cert-map = teknisk ubegrænset + gratis certs, men du bygger automatikken DIY SaaS Manager (GA’25): $0,10/tenant (min $20) + egen orkestrering profil-sprawl gratis domæner, men 100/profil → 100 profiler ved 10k
DB scale-to-zero ja (Neon)ja (Neon) nej Cloud SQL always-on delvist Aurora v2, sjældent idle delt nej Flexible = stop/start
Prismodel / rabat PAYG, $5 base, nul egress-gebyr PAYG sæde+forbrug; ingen rabat på edge-meter PAYG; CUD −52% på DB/compute, ikke LB/egress PAYG; Savings Plans/RI — ikke CDN/egress/domæner PAYG; RI −55% på DB, ikke Front Door-base
Licens / lock-in Lav på data; Workers-runtime + hostname-API proprietært Middel (framework-adaptere); domæner nemme at flytte Container+PG portabelt; LB/cert-map-glue klæber Container+PG portabelt; SaaS Mgr + Aurora-glue klæber Container+PG portabelt; Front Door + tenant/RBAC klæber
Drift (2 personer) lavmeget lav høj LB+cert-automatik+IAM høj VPC/IAM/SaaS Mgr højest tenant/RBAC + profil-sprawl
EU / GDPR Data Localization (Ent.) EU-regioner; edge globalt EU-regioner, granulær EU + Sovereign Cloud EU Data Boundary — mest moden
~kr/kunde/md @1.000
Egnethed (mange små + BYO-domæner) bedst v. skala bedst til MVP/drift kun ved GCP-binding kun hvis AWS-forankret kun MS-enterprise

Hyperscalerne (AWS/GCP/Azure) kan alt, men til “mange små sites + mange kunde-domæner + lav trafik” er de alle dyrere og markant mere driftstunge end Cloudflare/Vercel. Vælg en hyperscaler kun når en specifik grund tvinger det: eksisterende cloud-binding, streng EU-datasuverænitet, eller en Microsoft-/enterprise-kunde.

08

Anbefaling pr. leverance-type

Website i volumen

SMV-sites (CVR)

Delt Website OS. Ét kodebase, tenant-config, central deploy til alle. Første konkrete produkt.

→ Linje B · Vercel → Cloudflare + Neon
Skræddersyet SaaS

Skal skaleres + sælges

Isoleret container pr. kunde. Kunden kan overtage kode + drift.

→ Linje A · M2 Cloud Run / M3 Fly + Neon
Microsoft / .NET

Enterprise-kunder

Entra/M365, subscription-overdragelse, EU-compliance. Brug Neon som DB.

→ Linje A · M7 Azure Container Apps
Kunde vil eje selv

Fuld kontrol

Laveste lock-in, hårdest isolation, alt er Docker + Compose.

→ Linje A · M5 Hetzner VPS + Caddy
09

AI-agent-fabrikken (Website OS)

Onboarding-pipelineresearch → SEO → builder → indhold → billeder → QA
Human-approval gateInngest waitForEvent — suspenderer gratis til godkendelse
Risiko-gate → deploylow = auto · medium/high = menneske klikker · instant rollback
Sikkerhed

Agenter uden prod-adgang

Agent → branch → PR → preview → automatiseret QA (Playwright + Lighthouse + a11y + LLM-judge) → risiko-gate. Append-only audit-log + git + immutable deploys. Idempotente handlinger.

AI-omkostning

~$5 pr. site (engangs)

Claude Sonnet som arbejdshest, Opus kun til svær reasoning, Batch API + prompt caching. Amortiseret ~$0,15–0,25/site/md.

10

Sprog — betyder det noget?

Ja, men mest via økosystem og træningsdata. Containeren gør sproget uafhængigt af hosting.

Standard

TypeScript

Hele den AI-native stack er TS-first (Next.js, AI SDK, Mastra, MCP-SDK, Payload, Supabase/Convex). #1 på GitHub; typesikkerhed fanger netop de fejl agenter laver. Ét sprog fra UI til DB.

Når kunden trækker

C# / .NET

Azure/Microsoft-enterprise, eksisterende .NET, Windows. Host på Azure Container Apps — kører i OCI-container, stadig overdragelig.

Specialist

Python

Data/ML, pipelines, scripting. CVR-scriptet bliver i Python. Kør som separate jobs ved siden af TS-kernen.

11

Åbne spørgsmål → afgøres som ADR