Meine Webanwendung speichert Produktinformationen in XML-Dateien auf der Festplatte, auf dem Webserver. Das ist vollkommen in Ordnung, wenn es um ein paar Produkte geht, aber ich habe meine Sorge, dass große Mengen von Dateien Probleme verursachen können.Datenspeicheransatz auf Webservern
Also lassen Sie uns sagen, ich werde haben 20.000 Produkte, das würde bedeuten, in einem Verzeichnis mit 20.000 XML-Dateien mit. Ich bin nicht vertraut mit Webserver-Festplattenspeicher-Infrastruktur, würde so viele Dateien Probleme wie erhebliche Rückgang der Zugriffsgeschwindigkeit und/oder übermäßige Festplattenfragmentierung verursachen? Zerplatzen Storage-Server sogar, ist Fragmentierung ein Problem, um das ich mich auf Servern kümmern muss?
ich lieber meine XML-Dateien einzelne halten, weil ich sie direkt als statische Inhalte via http zugreifen kann mich viel schneller Zugriffsgeschwindigkeit und Cache geben. Die Alternative wäre, eine große binäre Datendatei zu erstellen und jedes Produktdaten-XML in dieser Datei im Binärmodus zu speichern, und dann ein serverseitiges Skript zu verwenden, um die xmls aus dieser großen Datendatei zu extrahieren. (Ja, ich weiß, ich kann sie einfach in einer Datenbank speichern, aber das ist nicht der Fall, dass ich interessiert bin.)
Das Ausmaß, in dem Fragmentierung und Zugriffsgeschwindigkeit Probleme sind, hängt von dem Dateisystem ab, auf dem Sie dies speichern. Ist es Unix/Windows? Welche Art von Dateisystem verwenden Sie? –
Nun, mein Hauptziel sind klassische Shared-Hosting-Konten, meine Anwendung ist PHP, so dass in den meisten Fällen die Maschine Unix wäre. Die Dateien sind klein, je 25-50KB, vielleicht größer, aber wahrscheinlich weniger als 100KB. Und in Bezug auf Auslastung/Nutzung, denke ich durchschnittliche Auslastung, oder Mid-Level, für High-Level Ich hätte wahrscheinlich keine andere Wahl und nur diese Dateien in einer Datenbanktabelle speichern. –