Station 00/Was Datenhaltung bei einer Webanwendung besonders macht·Vorschau
Station 00 · Ein Ort, der recht behält/Phase 3

Was Datenhaltung bei einer Webanwendung besonders macht

Eine Web-Anwendung hat vier Orte, an denen etwas liegen kann — und der Ort, an dem der Code läuft, ist ausdrücklich keiner davon.

Wer vorher Software gebaut hat, die auf einem Rechner lief, bringt eine Annahme mit, die im Netz nicht mehr stimmt: dass das Programm und seine Daten am selben Ort wohnen. Eine Web-Anwendung läuft in einem Behälter, der jederzeit weggeworfen und neu gestartet wird — beim Veröffentlichen, beim Neustart, beim Umzug auf einen anderen Server.

Alles, was im Behälter liegt, ist beim nächsten Veröffentlichen weg. Hochgeladene Dateien, eine SQLite-Datei im Anwendungsverzeichnis, ein Zwischenspeicher auf der Platte. Das ist kein Fehler des Systems, das ist seine Bauart — und es ist der häufigste Datenverlust bei der ersten eigenen Anwendung.

Die vier Orte

OrtWas dorthin gehörtWas ihn ausmacht
Der Browserzuletzt gewählter Filter, offene Klappe, ungesendeter EntwurfEr gehört dem Nutzer. Nie etwas Geheimes, nie etwas, das gelten soll
Der Behälternichts, was bleiben mussWird ersetzt, nicht gepflegt — er hält nur den laufenden Code
Die Datenbankalles Strukturierte, das gelten sollDer Ort, der recht behält
Der DateispeicherBilder, PDFs, Anhänge, SicherungenGroß, unstrukturiert, mit eigenen Zugangsschlüsseln
Der Satz, mit dem Sie es von einem Werkzeug verlangen — er steht so schon im Prüfblatt aus Kurs 1: „Alles, was bleiben muss, liegt in der Datenbank oder im dauerhaften Verzeichnis." Dieser Kurs ist die Ausführung dieses einen Satzes.
Erst grob, dann genau.Klicken Sie auf einen Ort — es erscheint nur, was dort gilt.
Der Browser1 von 4

Was hier liegt — localStorage, ein Cookie, der Zustand einer Oberfläche —, ist eine Bequemlichkeit für genau diesen Menschen an genau diesem Gerät. Es ist morgen vielleicht weg, weil er den Browser gewechselt oder die Daten gelöscht hat, und das darf nichts kosten.

Nie hierher: Schlüssel, Zugangsdaten, Preise, Berechtigungen. Alles, was im Browser steht, kann der Nutzer sehen und ändern — auch der, der es nicht soll.

Der Behälter2 von 4

Hier läuft der Code, und hier entscheidet die Anwendung, wer was sehen darf. Das ist ihre eigentliche Aufgabe — nicht das Speichern.

Der leere Boden im Bild ist wörtlich gemeint: Schreiben Sie eine Datei in den Behälter, ist sie beim nächsten Veröffentlichen fort. Wenn Sie eine SQLite-Datei benutzen, muss sie in einem dauerhaften Verzeichnis liegen, das über den Behälter hinaus besteht.

Die Datenbank3 von 4

Hier liegt alles, was Struktur hat und gelten soll. Sie ist der einzige Ort, an dem mehrere Nutzer gleichzeitig ändern können, ohne sich zu überschreiben — das ist ihr eigentlicher Wert, nicht die Geschwindigkeit.

Die Anwendung kommt mit einer eigenen Rolle herein, die weniger darf als Sie. Warum, steht in Station 06.

Der Dateispeicher4 von 4

Dateien gehören weder in den Behälter noch in die Datenbank. In der Datenbank blähen sie die Sicherung auf und machen jede Abfrage langsamer; im Behälter sind sie beim nächsten Mal weg.

Der Objektspeicher hat eigene Zugangsschlüssel — und die reichen in der Praxis fast immer weiter als nötig. Das ist Tür 5 aus Station 05.

Zugang erhalten
Fortschritt merken?Mit Zugang bleiben Häkchen und erledigte Phasen am Konto — auf jedem Gerät.