Backend, APIs & Daten · Gemischt

Dateien und Objektspeicher

In einem Satz: Dateien gehören nicht in die Datenbank und nicht auf die Serverplatte — sie gehören in den Objektspeicher mit signierten Adressen.

Warum nicht auf dem Server

Dateien auf einer lokalen Platte brechen mehrere Instanzen, Sicherung und Deployment. Im Objektspeicher erhalten Sie Beständigkeit, direkten Zugang aus einem Verteilnetz und eine Lebenszyklusrichtlinie.

Der richtige Ablauf

Der Server stellt eine kurzlebige signierte Adresse aus; der Client lädt direkt hoch; der Server erhält eine Benachrichtigung und aktualisiert den Datensatz. Weniger Last, weniger Kosten und weniger Wartezeit für den Nutzer.

Beim Download: dasselbe Prinzip. Eine signierte Adresse mit Ablauf, damit ein durchgesickerter Link nicht ewig ist.

Was auf dem Server zu prüfen ist

Den Dateityp nach Inhalt und nicht nach Endung, eine Größengrenze und einen Scan auf schädlichen Inhalt, wenn Nutzer an andere hochladen. Und Dateinamen — speichern Sie nie den vom Nutzer gegebenen Namen als Pfad im System.

Im Detail

Setzen Sie eine Lebenszyklusrichtlinie für Medien: was gelöscht wird, wann und wie. Speicher ist der Posten, der still wächst, und ohne Richtlinie wächst er einfach.