Next.js 16 vs Remix
Next.js 16 (Turbopack default, Partial Prerendering) vs Remix (Shopify, web standards) — React meta-framework karşılaştırması 2026.
Git push'tan sonra her şeyi otomatik yöneten yönetilen platform
Sabit aylık ücretli sunucu, tam kontrol, tam sorumluluk
Kesin kazanan yok, iki farklı sorumluluk modeli. Trafiğin spiky, DevOps kapasiten yoksa Vercel'in otomatik ölçeklemesi parasını hak ediyor. Öngörülebilir orta trafik + kurulu systemd/nginx/Cloudflare disiplinin varsa Hetzner + Cloudflare faturayı sabitliyor ve KVKK açısından avantaj sağlıyor. Kırılma noktası: bandwidth ve ISR-write hacmi — bir ay ölç, sonra karar ver.
| Kategori | Vercel | Hetzner VPS (self-host) |
|---|---|---|
| Performans | 8/10 | 7/10 |
| Öğrenme Kolaylığı | 9/10 | 5/10 |
| Ekosistem | 9/10 | 7/10 |
| Topluluk | 8/10 | 7/10 |
| İş Pazarı | 7/10 | 7/10 |
| Gelecek | 8/10 | 8/10 |
# Vercel — sıfır-config Next.js deploy + ortam değişkeni + Edge Config örneği
# 1) Proje kökünde vercel.json ile fonksiyon bölgesi ve cron ayarı
{
"regions": ["fra1"],
"crons": [
{ "path": "/api/cron/revalidate", "schedule": "0 */6 * * *" }
]
}
# 2) CLI ile deploy (build+TLS+CDN otomatik)
npx vercel --prod
# 3) ISR yazma birimi (1 birim = 8 KB, dahil kota yok) maliyetini
# düşürmek için revalidate süresini trafiğe göre ayarla
export const revalidate = 3600; // 1 saatte bir yeniden üret
# 4) Fast Origin Transfer'ı azaltmak için fonksiyon
# çıktısını statik önbelleğe zorla
export async function GET() {
return Response.json(
{ data: "ok" },
{ headers: { "Cache-Control": "public, s-maxage=600" } }
);
}# Hetzner VPS — Next.js standalone self-host + systemd + nginx
# 1) next.config.js — standalone çıktı modu (resmi self-hosting kılavuzu)
module.exports = {
output: "standalone",
};
# 2) Build + standalone kopyalama
npm run build
cp -r .next/static .next/standalone/.next/static
cp -r public .next/standalone/public
# 3) systemd unit — process yönetimi (portfolio-ssr.service örneği)
[Unit]
Description=Next.js standalone server
After=network.target
[Service]
Type=simple
User=portfolio
WorkingDirectory=/var/www/app/.next/standalone
ExecStart=/usr/bin/node server.js
Restart=on-failure
Environment=PORT=4000
NoNewPrivileges=true
ProtectHome=true
[Install]
WantedBy=multi-user.target
# 4) nginx reverse proxy (Next.js resmi önerisi)
server {
listen 443 ssl;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:4000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
# 5) sharp kurulumu — Image Optimization için zorunlu
npm install sharpKesin kazanan yok, iki farklı sorumluluk modeli. Trafiğin spiky, DevOps kapasiten yoksa Vercel'in otomatik ölçeklemesi parasını hak ediyor. Öngörülebilir orta trafik + kurulu systemd/nginx/Cloudflare disiplinin varsa Hetzner + Cloudflare faturayı sabitliyor ve KVKK açısından avantaj sağlıyor. Kırılma noktası: bandwidth ve ISR-write hacmi — bir ay ölç, sonra karar ver.
Ücretsiz Danışmanlık AlKesin oran trafik ve ISR-write hacmine bağlı, ama yapısal fark net: Vercel Pro $20/ay taban + kullanım-bazlı ek ücretler (Fast Data Transfer $0.15+/GB, Edge Request $2/1M, ISR Write $4/1M yazma birimi) alırken Hetzner VPS sabit bir aylık kirayla, dahil trafik kotası içinde kaldığın sürece ek ücret almıyor. Bandwidth/ISR-write hacmin düşükse fark önemsiz kalabilir; yükseldikçe Vercel'in faturası katlanarak büyürken Hetzner'in sabit kalıyor. 2026'daki Hetzner zamlarını da (özellikle CCX/CPX hatlarında) hesaba katarak kendi trafiğinle iki tarafı da hesapla.