Bölüm 29 / 33
Dosya, Medya ve Depolama Sistemleri
Dosya yükleme, object storage, görsel işleme, güvenlik ve içerik dağıtım kavramları.
4 canlı örnek — seçerek incele
İlgili kavramlar: Upload, File
Dosya yükleme
- FileT
İsim, içerik ve metadata taşıyan kalıcı veri nesnesi.
Dosyanın kullanıcı veya sistem tarafından görünen adı.
Dosya türünü ima eden .jpg, .pdf veya .csv son eki.
Dosya içeriğinin image/jpeg veya application/pdf gibi medya türü.
HTTP ile taşınan dosyanın MIME bilgisini belirten header.
Dosyanın byte cinsinden büyüklüğü.
Dosyayı açıklayan ad, tür, boyut, tarih ve sahip bilgileri.
Metin yerine byte dizisi olarak işlenen veri.
Belirli encoding ile karakterlerden oluşan dosya.
Metin karakterlerinin byte değerlerine dönüştürülme biçimi.
Dosyanın istemciden sunucu veya storage'a gönderilmesi.
Dosyanın sunucudan istemciye alınması.
Dosyayı bir form request'i içinde parça ve alanlarla gönderme.
Büyük dosyayı küçük parçalar hâlinde gönderip sunucuda birleştirme.
Kesilen yüklemeyi tamamlanan parçadan devam ettirme.
Parçalı yüklemenin dosya, parça ve süre bilgisini takip eden oturum.
Yüklenen veya indirilen veri oranını kullanıcıya gösterir.
Dosyayı sayfaya sürükleyerek yükleme etkileşimi.
Bir seferde birden fazla dosya seçip gönderme.
Dosyanın uygulama sunucusundan geçmeden doğrudan object storage'a yüklenmesi.
Belirli object ve süre için imzalı yükleme veya indirme izni veren URL.
Yetkili ve süreli dosya erişimi sağlayan kriptografik URL.
Kimlik doğrulama olmadan URL ile erişilebilen dosya.
Yetki veya signed URL olmadan erişilemeyen dosya.
Dosyayı hangi kullanıcı, tenant veya rolün okuyup değiştirebileceğini belirler.
Dosyanın bağlı olduğu kullanıcı, tenant veya kayıt.
Dosya boyutu, türü, içeriği ve sayısını kontrol etme.
İzin verilen dosya uzantılarını kontrol eder.
Dosya içeriğinin gerçek medya türünü doğrular.
Dosyanın başlangıç byte'larından gerçek formatını tanıma.
Formatı tanımlayan karakteristik binary başlık.
Dosya adındaki path ve tehlikeli karakterleri güvenli biçime dönüştürme.
Çakışmayı önlemek için UUID veya hash tabanlı dosya adı üretme.
Dosya adındaki ../ gibi parçalarla izin verilen dizin dışına çıkma saldırısı.
Yüklenen dosyayı malware motoruyla analiz etme.
Taranmamış veya şüpheli dosyayı kullanıcı erişiminden ayrı alanda tutma.
Sunucuda dosya malware taraması için kullanılan açık kaynak antivirüs motoru.
Dosyanın tarayıcıda inline gösterilmesi veya attachment indirilmesini belirleyen header.
Tarayıcı içinde görüntülenmesi istenen dosya.
Tarayıcının dosyayı indirmesini isteyen response davranışı.
Büyük dosyanın yalnızca belirli byte aralığını isteme.
Dosyayı tamamen belleğe almadan parçalar hâlinde istemciye gönderme.
Dosyaları bucket ve object key yapısıyla HTTP üzerinden saklayan ölçeklenebilir depo.
- S3T
Object storage API ve hizmet modeli için yaygın standart hâline gelmiş Amazon servisi.
S3 API'siyle uyumlu çalışan R2, MinIO veya başka object storage.
Object storage içindeki üst seviye dosya koleksiyonu.
Bucket içinde key, içerik ve metadata ile saklanan dosya.
Object'in bucket içindeki benzersiz yol benzeri adı.
Aynı key'in eski sürümlerini saklama özelliği.
Object'i yaşına veya prefix'ine göre silen veya başka storage sınıfına taşıyan kural.
Erişim sıklığı ve maliyete göre farklı object storage seviyesi.
Sık erişilen veriler için hızlı depolama.
Nadiren erişilen arşiv verisi için düşük maliyetli depolama.
Uzun süre saklanan ve geri getirmesi zaman alabilen depolama.
Dosyanın belirli süre silinmesini veya değiştirilmesini engeller.
Dosyanın ne kadar süre saklanacağını belirleyen kural.
Object'leri başka bucket veya bölgeye otomatik kopyalama.
Dosyaları farklı coğrafi bölgedeki bucket'a kopyalar.
Kendi sunucunda çalıştırılabilen S3 uyumlu object storage.
S3 uyumlu Cloudflare object storage hizmeti.
Sunucuya disk blokları olarak bağlanan depolama.
Dosya ve klasör hiyerarşisi sunan NFS veya SMB benzeri depolama.
- NFSO
Unix/Linux sistemlerinde uzak klasörü ağ üzerinden mount eden dosya protokolü.
- SMBO
Windows ve ağ paylaşımlarında yaygın dosya paylaşım protokolü.
Uygulama sunucusunun kendi fiziksel veya sanal diski.
Instance silindiğinde verisi kaybolabilen geçici disk.
Uygulama yeniden oluşturulsa da veriyi koruyan disk alanı.
- CDNT
Dosyaları kullanıcıya yakın edge noktasından sunan dağıtım ağı.
CDN'in dosyayı ilk kez aldığı asıl storage veya sunucu.
CDN'de hangi isteklerin aynı dosya cache'ini kullanacağını belirler.
Dosya adına hash veya sürüm ekleyerek yeni içeriğin cache'den ayrılmasını sağlar.
İçerik hash'i taşıdığı için uzun süre değişmez cache edilebilen dosya.
- ETagO
Dosya sürümünü temsil edip koşullu HTTP isteği yapılmasını sağlar.
Dosyanın son değişiklik zamanını HTTP header ile bildirir.
Dosya değişmediyse body yerine 304 yanıtı alınmasını sağlar.
Görseli boyutlandırma, kırpma, sıkıştırma veya format dönüştürme.
Görsel genişlik ve yüksekliğini değiştirme.
- CropT
Görselin seçilen bölümünü keserek yeni kadraj oluşturma.
- FitT
Görseli oranını koruyarak sınır kutusuna sığdırma.
Kutuyu tamamen dolduracak şekilde görseli ölçekleyip gerekirse kırpma.
Liste ve önizleme için oluşturulan küçük görsel.
Cihaz ve ekran yoğunluğuna uygun farklı görsel boyutları sunma.
Tarayıcıya alternatif görsel çözünürlüklerini bildiren attribute.
Görsel kaliteyi korurken dosya boyutunu azaltma.
Gözle az fark edilen veriyi kaldırarak daha küçük dosya üretme.
Görsel verisini kayıpsız biçimde küçültme.
- JPEGT
Fotoğraf türü görseller için yaygın kayıplı format.
- PNGT
Şeffaflık ve kayıpsız sıkıştırma destekleyen görsel format.
- WebPT
Kayıplı/kayıpsız ve şeffaflık destekleyen modern web formatı.
- AVIFO
Yüksek sıkıştırma verimliliğine sahip modern görsel format.
- SVGT
XML tabanlı ölçeklenebilir vektör görsel formatı.
SVG içindeki script ve dış kaynak gibi zararlı içeriği temizleme.
- EXIFO
Fotoğrafın cihaz, tarih ve konum gibi metadata bilgisi.
Gizlilik ve boyut için görsel metadata'sını kaldırma.
Fotoğrafın EXIF veya piksel düzenine göre doğru döndürülmesi.
Görsele marka veya sahiplik işareti ekleme.
Yüklenen dosyaları arama, kategori ve kullanım ilişkileriyle yönetme.
Görsel, video ve dokümanları sürüm, hak ve metadata ile yönetme.
Kurumsal medya dosyalarını gelişmiş arama, lisans ve dağıtımla yöneten sistem.
Görselin anlamını erişilebilirlik ve bağlam için açıklayan metin.
Görselin yanında kullanıcıya gösterilen açıklama.
Responsive kırpma sırasında korunması gereken görsel bölgesi.
Videoyu farklı codec, çözünürlük ve bitrate'lere dönüştürme.
Video veya ses verisini sıkıştırıp çözen algoritma.
MP4 veya WebM gibi ses, video ve metadata akışlarını paketleyen format.
Video veya sesin saniye başına veri miktarı.
Videonun piksel genişlik ve yüksekliği.
Ağ hızına göre farklı kalite segmentleri arasında geçiş yapan yayın.
- HLSO
Videoyu küçük HTTP segmentleri ve playlist ile yayınlayan protokol.
- DASHO
Adaptif video segmentlerini HTTP üzerinden sunan açık standart.
Yüklenen video işleme görevlerini asenkron worker'lara dağıtan kuyruk.
Video veya dokümandan önizleme görseli oluşturma.
PDF sayfasını görsel veya tarayıcı viewer içinde önizleme.
- OCRO
Görsel veya taramadaki metni makine okunabilir metne dönüştürme.
Dosya bütünlüğünü doğrulamak için içerikten üretilen özet.
- MD5T
Bütünlük kontrolünde kullanılabilen ancak güvenlik için zayıf eski hash.
Dosya bütünlüğü ve kimliği için güçlü kriptografik hash.
Aynı içerik hash'ine sahip dosyaları tekrar saklamama.
Artık hiçbir kayda bağlı olmayan dosyaları belirleyip temizleme.
Uygulama kaydıyla ilişkisi kalmamış storage dosyası.
Dosyayı hemen fiziksel silmeden silinmiş olarak işaretleme.
Yanlış silmeyi geri almak için dosyayı belirli süre sonra fiziksel kaldırma.
Dosya ve metadata'nın geri yüklenebilir kopyası.
Silinen veya bozulan dosyayı yedekten geri getirme.
| Kavram | Seviye | Kısa açıklama |
|---|---|---|
| File | T | İsim, içerik ve metadata taşıyan kalıcı veri nesnesi. |
| Filename | T | Dosyanın kullanıcı veya sistem tarafından görünen adı. |
| Extension | T | Dosya türünü ima eden .jpg, .pdf veya .csv son eki. |
| MIME Type | T | Dosya içeriğinin image/jpeg veya application/pdf gibi medya türü. |
| Content Type | T | HTTP ile taşınan dosyanın MIME bilgisini belirten header. |
| File Size | T | Dosyanın byte cinsinden büyüklüğü. |
| Metadata | T | Dosyayı açıklayan ad, tür, boyut, tarih ve sahip bilgileri. |
| Binary Data | T | Metin yerine byte dizisi olarak işlenen veri. |
| Text File | T | Belirli encoding ile karakterlerden oluşan dosya. |
| Encoding | T | Metin karakterlerinin byte değerlerine dönüştürülme biçimi. |
| Upload | T | Dosyanın istemciden sunucu veya storage'a gönderilmesi. |
| Download | T | Dosyanın sunucudan istemciye alınması. |
| Multipart Upload | T | Dosyayı bir form request'i içinde parça ve alanlarla gönderme. |
| Chunked Upload | O | Büyük dosyayı küçük parçalar hâlinde gönderip sunucuda birleştirme. |
| Resumable Upload | O | Kesilen yüklemeyi tamamlanan parçadan devam ettirme. |
| Upload Session | O | Parçalı yüklemenin dosya, parça ve süre bilgisini takip eden oturum. |
| Progress Bar | T | Yüklenen veya indirilen veri oranını kullanıcıya gösterir. |
| Drag and Drop Upload | T | Dosyayı sayfaya sürükleyerek yükleme etkileşimi. |
| Multiple Upload | T | Bir seferde birden fazla dosya seçip gönderme. |
| Direct Upload | O | Dosyanın uygulama sunucusundan geçmeden doğrudan object storage'a yüklenmesi. |
| Presigned URL | O | Belirli object ve süre için imzalı yükleme veya indirme izni veren URL. |
| Signed URL | O | Yetkili ve süreli dosya erişimi sağlayan kriptografik URL. |
| Public File | T | Kimlik doğrulama olmadan URL ile erişilebilen dosya. |
| Private File | T | Yetki veya signed URL olmadan erişilemeyen dosya. |
| Access Control | T | Dosyayı hangi kullanıcı, tenant veya rolün okuyup değiştirebileceğini belirler. |
| File Ownership | T | Dosyanın bağlı olduğu kullanıcı, tenant veya kayıt. |
| Upload Validation | T | Dosya boyutu, türü, içeriği ve sayısını kontrol etme. |
| Extension Validation | T | İzin verilen dosya uzantılarını kontrol eder. |
| MIME Validation | O | Dosya içeriğinin gerçek medya türünü doğrular. |
| Magic Bytes | O | Dosyanın başlangıç byte'larından gerçek formatını tanıma. |
| File Signature | O | Formatı tanımlayan karakteristik binary başlık. |
| Filename Sanitization | T | Dosya adındaki path ve tehlikeli karakterleri güvenli biçime dönüştürme. |
| Unique Filename | T | Çakışmayı önlemek için UUID veya hash tabanlı dosya adı üretme. |
| Path Traversal | O | Dosya adındaki ../ gibi parçalarla izin verilen dizin dışına çıkma saldırısı. |
| Virus Scan | O | Yüklenen dosyayı malware motoruyla analiz etme. |
| Quarantine | O | Taranmamış veya şüpheli dosyayı kullanıcı erişiminden ayrı alanda tutma. |
| ClamAV | O | Sunucuda dosya malware taraması için kullanılan açık kaynak antivirüs motoru. |
| Content Disposition | T | Dosyanın tarayıcıda inline gösterilmesi veya attachment indirilmesini belirleyen header. |
| Inline File | T | Tarayıcı içinde görüntülenmesi istenen dosya. |
| Attachment Download | T | Tarayıcının dosyayı indirmesini isteyen response davranışı. |
| Range Request | O | Büyük dosyanın yalnızca belirli byte aralığını isteme. |
| Streaming Download | O | Dosyayı tamamen belleğe almadan parçalar hâlinde istemciye gönderme. |
| Object Storage | T | Dosyaları bucket ve object key yapısıyla HTTP üzerinden saklayan ölçeklenebilir depo. |
| S3 | T | Object storage API ve hizmet modeli için yaygın standart hâline gelmiş Amazon servisi. |
| S3-compatible Storage | T | S3 API'siyle uyumlu çalışan R2, MinIO veya başka object storage. |
| Bucket | T | Object storage içindeki üst seviye dosya koleksiyonu. |
| Object | T | Bucket içinde key, içerik ve metadata ile saklanan dosya. |
| Object Key | T | Object'in bucket içindeki benzersiz yol benzeri adı. |
| Object Versioning | O | Aynı key'in eski sürümlerini saklama özelliği. |
| Lifecycle Rule | O | Object'i yaşına veya prefix'ine göre silen veya başka storage sınıfına taşıyan kural. |
| Storage Class | O | Erişim sıklığı ve maliyete göre farklı object storage seviyesi. |
| Hot Storage | T | Sık erişilen veriler için hızlı depolama. |
| Cold Storage | O | Nadiren erişilen arşiv verisi için düşük maliyetli depolama. |
| Archive Storage | O | Uzun süre saklanan ve geri getirmesi zaman alabilen depolama. |
| Object Lock | İ | Dosyanın belirli süre silinmesini veya değiştirilmesini engeller. |
| Retention Policy | O | Dosyanın ne kadar süre saklanacağını belirleyen kural. |
| Replication | O | Object'leri başka bucket veya bölgeye otomatik kopyalama. |
| Cross-region Replication | İ | Dosyaları farklı coğrafi bölgedeki bucket'a kopyalar. |
| MinIO | O | Kendi sunucunda çalıştırılabilen S3 uyumlu object storage. |
| Cloudflare R2 | O | S3 uyumlu Cloudflare object storage hizmeti. |
| Block Storage | O | Sunucuya disk blokları olarak bağlanan depolama. |
| File Storage | T | Dosya ve klasör hiyerarşisi sunan NFS veya SMB benzeri depolama. |
| NFS | O | Unix/Linux sistemlerinde uzak klasörü ağ üzerinden mount eden dosya protokolü. |
| SMB | O | Windows ve ağ paylaşımlarında yaygın dosya paylaşım protokolü. |
| Local Disk | T | Uygulama sunucusunun kendi fiziksel veya sanal diski. |
| Ephemeral Disk | O | Instance silindiğinde verisi kaybolabilen geçici disk. |
| Persistent Volume | T | Uygulama yeniden oluşturulsa da veriyi koruyan disk alanı. |
| Shared Storage | O | Birden fazla instance'ın ortak eriştiği dosya deposu. |
| CDN | T | Dosyaları kullanıcıya yakın edge noktasından sunan dağıtım ağı. |
| Origin | T | CDN'in dosyayı ilk kez aldığı asıl storage veya sunucu. |
| Cache Key | O | CDN'de hangi isteklerin aynı dosya cache'ini kullanacağını belirler. |
| Cache Busting | T | Dosya adına hash veya sürüm ekleyerek yeni içeriğin cache'den ayrılmasını sağlar. |
| Immutable Asset | O | İçerik hash'i taşıdığı için uzun süre değişmez cache edilebilen dosya. |
| ETag | O | Dosya sürümünü temsil edip koşullu HTTP isteği yapılmasını sağlar. |
| Last-Modified | T | Dosyanın son değişiklik zamanını HTTP header ile bildirir. |
| Conditional Request | O | Dosya değişmediyse body yerine 304 yanıtı alınmasını sağlar. |
| Image Processing | T | Görseli boyutlandırma, kırpma, sıkıştırma veya format dönüştürme. |
| Resize | T | Görsel genişlik ve yüksekliğini değiştirme. |
| Crop | T | Görselin seçilen bölümünü keserek yeni kadraj oluşturma. |
| Fit | T | Görseli oranını koruyarak sınır kutusuna sığdırma. |
| Cover | T | Kutuyu tamamen dolduracak şekilde görseli ölçekleyip gerekirse kırpma. |
| Thumbnail | T | Liste ve önizleme için oluşturulan küçük görsel. |
| Responsive Image | T | Cihaz ve ekran yoğunluğuna uygun farklı görsel boyutları sunma. |
| srcset | T | Tarayıcıya alternatif görsel çözünürlüklerini bildiren attribute. |
| Image Optimization | T | Görsel kaliteyi korurken dosya boyutunu azaltma. |
| Lossy Compression | O | Gözle az fark edilen veriyi kaldırarak daha küçük dosya üretme. |
| Lossless Compression | O | Görsel verisini kayıpsız biçimde küçültme. |
| JPEG | T | Fotoğraf türü görseller için yaygın kayıplı format. |
| PNG | T | Şeffaflık ve kayıpsız sıkıştırma destekleyen görsel format. |
| WebP | T | Kayıplı/kayıpsız ve şeffaflık destekleyen modern web formatı. |
| AVIF | O | Yüksek sıkıştırma verimliliğine sahip modern görsel format. |
| SVG | T | XML tabanlı ölçeklenebilir vektör görsel formatı. |
| SVG Sanitization | O | SVG içindeki script ve dış kaynak gibi zararlı içeriği temizleme. |
| EXIF | O | Fotoğrafın cihaz, tarih ve konum gibi metadata bilgisi. |
| EXIF Removal | O | Gizlilik ve boyut için görsel metadata'sını kaldırma. |
| Orientation | T | Fotoğrafın EXIF veya piksel düzenine göre doğru döndürülmesi. |
| Watermark | T | Görsele marka veya sahiplik işareti ekleme. |
| Media Library | T | Yüklenen dosyaları arama, kategori ve kullanım ilişkileriyle yönetme. |
| Asset Management | T | Görsel, video ve dokümanları sürüm, hak ve metadata ile yönetme. |
| Digital Asset Management | O | Kurumsal medya dosyalarını gelişmiş arama, lisans ve dağıtımla yöneten sistem. |
| Alt Text | T | Görselin anlamını erişilebilirlik ve bağlam için açıklayan metin. |
| Caption | T | Görselin yanında kullanıcıya gösterilen açıklama. |
| Focal Point | O | Responsive kırpma sırasında korunması gereken görsel bölgesi. |
| Video Transcoding | O | Videoyu farklı codec, çözünürlük ve bitrate'lere dönüştürme. |
| Codec | O | Video veya ses verisini sıkıştırıp çözen algoritma. |
| Container Format | O | MP4 veya WebM gibi ses, video ve metadata akışlarını paketleyen format. |
| Bitrate | O | Video veya sesin saniye başına veri miktarı. |
| Resolution | T | Videonun piksel genişlik ve yüksekliği. |
| Adaptive Bitrate Streaming | İ | Ağ hızına göre farklı kalite segmentleri arasında geçiş yapan yayın. |
| HLS | O | Videoyu küçük HTTP segmentleri ve playlist ile yayınlayan protokol. |
| DASH | O | Adaptif video segmentlerini HTTP üzerinden sunan açık standart. |
| Transcoding Queue | O | Yüklenen video işleme görevlerini asenkron worker'lara dağıtan kuyruk. |
| Thumbnail Generation | T | Video veya dokümandan önizleme görseli oluşturma. |
| PDF Preview | O | PDF sayfasını görsel veya tarayıcı viewer içinde önizleme. |
| OCR | O | Görsel veya taramadaki metni makine okunabilir metne dönüştürme. |
| Checksum | O | Dosya bütünlüğünü doğrulamak için içerikten üretilen özet. |
| MD5 | T | Bütünlük kontrolünde kullanılabilen ancak güvenlik için zayıf eski hash. |
| SHA-256 | O | Dosya bütünlüğü ve kimliği için güçlü kriptografik hash. |
| Deduplication | O | Aynı içerik hash'ine sahip dosyaları tekrar saklamama. |
| Garbage Collection | O | Artık hiçbir kayda bağlı olmayan dosyaları belirleyip temizleme. |
| Orphan File | O | Uygulama kaydıyla ilişkisi kalmamış storage dosyası. |
| Soft Delete | O | Dosyayı hemen fiziksel silmeden silinmiş olarak işaretleme. |
| Delayed Deletion | O | Yanlış silmeyi geri almak için dosyayı belirli süre sonra fiziksel kaldırma. |
| Backup | T | Dosya ve metadata'nın geri yüklenebilir kopyası. |
| Restore | T | Silinen veya bozulan dosyayı yedekten geri getirme. |
Bölüm uygulamaları
Bu bölümü bitirmeden önce şunları deneyin veya açıklayın.
- Ürün görseli yüklemesini direct upload, signed URL, MIME doğrulama ve thumbnail worker ile tasarlayın.
- Tenant bazlı private dosyalar için object key, authorization ve retention politikasını hazırlayın.
- Büyük video yükleme için resumable upload, transcoding queue ve adaptive streaming akışı çizin.