Küçük lig organizasyonları için maç kaydı, hem arşivleme hem de hakem itirazları, öne çıkan anların paylaşımı ve yayın sonrası analiz için kritik bir bileşendir. Ancak bütçe kısıtlıyken güvenilir, sürekli kayıt almak ve replay (tekrar oynatma) iş akışını kurmak göz korkutabilir. Bu rehberde üç adımda (sunucu kurulum, yedekleme/arsivleme, replay iş akışı) düşük maliyetli, uygulanabilir ve ölçeklendirilebilir bir çözüm anlatacağım. Somut örnekler, komutlar ve maliyet hesaplarıyla hızlıca uygulayabilirsiniz.
Giriş: Neden üç adım?
Çoğu küçük ligde yaşanan sorunlar şunlardır: kayıtların düzensiz saklanması, disk arızası veya insan hatasıyla veri kaybı, replay almak için uzun manuel süreçler ve yayın sırasında bant genişliği darboğazları. Bu üç adım bu riskleri minimize eder:
- Adım 1 — Sunucu & ingest: Güvenilir ve sürekli kayıt alınmasını sağlar.
- Adım 2 — Yedekleme & arşiv: Verinin kaybolmasını önler; otomasyon ve maliyet optimizasyonu sağlar.
- Adım 3 — Replay & dağıtım: Anlık klip oluşturma, metadata ile etiketleme ve hızlı oynatma sunar.
Adım 1: Sunucu Kurulumu — Ucuz ama güvenilir ingest
Amacımız düşük maliyetle 24/7 çalışabilecek bir kayıt hedefi kurmak. İki seçenek öne çıkar: küçük bir VPS + harici disk veya ortamdaki bir PC/mini-server. Tercihlerinizi ağ, bant genişliği ve ölçek gereksinimine göre yapın.
Donanım ve VPS önerileri
- VPS (ucuz, güvenilir): Hetzner CX11/CX21 veya Scaleway, aylık yaklaşık €3–10 aralığında. Bu makineler RTMP ingest ve kısa süreli depolama için yeterli.
- Yerel sunucu (uzun vadede avantajlı): Intel i5/ryzen 5, 16GB RAM, NVMe 500GB (OS ve aktif kayıtlar) + 4TB HDD arşiv (uzun süreli saklama) kombinasyonu düşük toplam maliyetli ve hızlıdır.
- Disk yapılandırması: Kritik kayıtlar için RAID1 (aynalanmış SSD) veya RAID10 tercih edin; performans ve güvenlik dengesi sağlar.
Yazılım: RTMP ingest ve otomatik kaydetme
Basit, yaygın ve ücretsiz bir akış kabul sunucusu: Nginx + nginx-rtmp-module. Alternatif olarak SRS (Simple Realtime Server) daha modern özellikler sunar. Örnek akış: yayıncı (OBS, vMix) RTMP ile sunucuya gönderir; sunucu her akışı .mp4 olarak kaydeder.
Basit bir Nginx-RTMP yapılandırma mantığı: ingest -> segmentli kaydetme -> kısa süreli disk
Örnek işlem akışı (özet):
- Yayıncı OBS ile rtmp://sunucu/ad/streamkey gönderir.
- Sunucu gelen akışı FFmpeg ile kaydeder: her maçı/haritayı ayrı dosyaya segmentleyin.
- Her kaydı işaretleyip (metadata) yedekleme kuyruğuna atar.
FFmpeg ile basit kayıt komutu örneği (sunucuda):
ffmpeg -i rtmp://localhost/live/streamkey -c copy /recordings/2026-02-09_streamkey_match.mp4
NOT: Kayıtları 'raw' (kopya) modunda almak, CPU harcamadan disk yazımı sağlar. Re-encode gereksinimi varsa düşük öncelikli arka plan görevine atın.
Adım 2: Yedekleme ve Arşivleme — Otomatik, doğrulanmış, ucuz
Yerel diskler yeterli değildir; en iyi uygulama en az 2 kopya (local + uzak). Otomasyon, şifreleme ve doğrulama kritik.
Depolama katmanları
- Hot (aktif): NVMe üzerinde son 7–14 günün kayıtları, hızlı erişim için.
- Warm (orta): Yerel HDD veya düşük maliyetli bulut üzerinde 1–6 ay saklama.
- Cold (arşiv): Backblaze B2 veya AWS Glacier/IA üzerine uzun süreli arşiv (6 ay+).
Uzak yedekleme araçları
rclone: Backblaze B2, S3 uyumlu depolara kolay kopya. Otomasyon için cron + health-check scriptleri kullanın.
Örnek rclone komutu (günlük senaryo):
rclone copy /recordings remote:league-archives/$(date +%Y)/ --min-age 1d --checksum
Doğrulama: Dosya bütünlüğü için SHA256 veya rclone check kullanın. Her yedeklemede log alın, 7 günlük log rotasyonu uygulayın.
Maliyet optimizasyonu
- Günlük küçük dosyaları tek büyük arşiv ZIP'e dönüştürün (sıkıştırma/transfer başına API çağrısını azaltır).
- Backblaze B2 genelde ekonomik: uzun süreli arşivleri B2 + lifecycle ile daha soğuk sınıflara taşıyın.
- Yerel depolama için HDD kapasitesini toplu alımlar ile ucuzlayın; kritik kayıtları cloud'a gecikmeli gönderin.
Adım 3: Replay (Klip Oluşturma) ve Dağıtım — Hızlı ve kullanışlı
Replay iş akışı, maç sırasında veya sonrasında istenen anların hızlıca çıkarılmasını sağlar. Otomasyon: anlık işaretleme (hotkeys veya match admin timestamping) + FFmpeg ile klip üretimi + HLS paketleme.
Zaman damgası ve metadata sistemi
- Her maç için küçük bir JSON manifest oluşturun: takımlar, maç id, harita, başlangıç zamanları.
- Hakem veya yayın yönetimi anı işaretlediğinde timestamp ve kısa açıklamayı manifest'e eklesin.
Klip çıkarma örneği
FFmpeg komutu ile 00:12:34 - 00:12:44 arasını çıkarmak:
ffmpeg -ss 00:12:34 -i /recordings/match.mp4 -t 00:00:10 -c copy /clips/match_123_clip1.mp4
Daha güvenli yeniden kodlama (farklı bitrate veya çözünürlük için):
ffmpeg -ss 00:12:34 -i match.mp4 -t 10 -c:v libx264 -crf 23 -preset veryfast -c:a aac clip.mp4
Dağıtım: Hızlı oynatma için HLS/HTTP
Oynatıcılar (Video.js vb.) ile HLS sunmak en pratik çözüm. Nginx + HLS segmentleme ya da hazır CDN kullanabilirsiniz. Kritik: düşük gecikme için segment sürelerini 2-4s arasında tutun.
Operasyonel İpuçları ve Kontrol Listesi
- Dosya adlandırma: YYYY-MM-DD_league_matchid_map.mp4 formatını kullanın; otomasyon kolaylaşır.
- Monitörleme: Disk kullanımını, RTMP bağlantılarını ve yedekleme hatalarını Prometheus/Grafana veya basit bir cron-mail ile takip edin.
- Failover: Ana sunucu düştüğünde otomatik DNS veya yedek ingest endpoint'i yönlendirin (küçük liglerde basit bir ikinci VPS yeterlidir).
- Test ve tatbikat: Her turnuva öncesi tam bir kayıt->yedek->replay testi yapın.
Maliyet Tahmini (Örnek)
- VPS (Hetzner CX11): ~€3.5/ay — RTMP ingest ve kısa süreli kayıt.
- Yerel mini-server (tek seferlik): 4000–7000 TL, NVMe + HDD kombinasyonu.
- Backblaze B2: GB başı düşük ücret, aylık arşiv maliyeti kullanımınıza bağlı.
- Toplam düşük hacimli lig (ayda ~500 GB kayıt): Cloud + VPS çözümü aylık 10–25€ civarı tutarlarla yönetilebilir.
Sonuç: Hızlı Adımlarla Güvenilir Sistemi Kurun
Bu rehberde anlattığım 3 adım — doğru sunucu ingest'i, otomatik ve doğrulanmış yedekleme, hızlı replay hattı — küçük liglerin sınırlı bütçeyle bile profesyonel bir kayıt altyapısı kurmasını sağlar. Kritik olan otomasyon, isimlendirme ve düzenli testlerdir. Başlangıçta basit başlayın: bir VPS + yerel disk ve rclone ile B2 yedeği çoğu problem için yeterlidir. Gerektikçe kapasite ve CDN ekleyin.
Hızlı kontrol listesi: RTMP ingest çalışıyor mu? Kayıt dosyaları düzgün isimleniyor mu? Otomatik yedek temiz çalışıyor mu? Replay 2–3 dakika içinde üretilebiliyor mu?
Uygulamaya geçmeden önce elinizdeki bant genişliği, beklenen günlük kayıt hacmi ve bütçeyi netleştirin. İsterseniz mevcut altyapınızı yazarak size adım adım özelleştirilmiş bir kurulum planı ve örnek konfigürasyonlar gönderebilirim.