Ich muss eine kleinere Windows Forms-Anwendung (Produktkonfigurator) zu einer asp.net-App, die auf einer großen Unternehmenswebsite verwendet werden, sollte die Nachfrage moderat sein, weil es für eine ist spezialisierte Produktlinie.xml Parsing/Abfrage Performance-Frage für asp.net
Ich habe keinen Zugriff auf eine Datenbank und die Verwendung von XML ist eine Anforderung von ihren Webentwicklern.
Es gibt ungefähr 30 verschiedene Produkte mit ungefähr 300 verschiedenen möglichen Konfigurationen, die in den XML-Dateien gespeichert sind, und verknüpfte Fragen/Antworten, die zu einer Produktempfehlung führen. Auch einige Produktionsmöglichkeiten. Die App ist in 6 Sprachen verfügbar.
Wie würden Sie den Layer "Datenzugriff" lösen, wenn Sie es so nennen könnten? Ich dachte daran, die XML-Dateien in ihre Objekte zu lesen/zu deserialisieren und sie im Cache von asp.net zu speichern, wenn sie nicht schon da sind, und sie dann bei nachfolgenden Anfragen aus dem Cache auszulesen. Aber das würde bedeuten, dass alle Objekte Tag und Nacht in der Erinnerung leben.
Ist das überhaupt notwendig oder schlau, leistungsmäßig? Wie ich schon sagte, die App ist nicht so groß, die XML-Dateien nicht so groß. Könnte ich einfach eine Repository-Klasse erstellen, die die XML-Dateien liest, wenn ein Objekt angefordert wird (z. B. "Produktdetails" oder "Nächste Frage") und es auf diese Weise zurückgibt und den Speicherverbrauch senkt?
es wird garantiert, auf einem einzigen Server zu laufen ... – kitsune
Ich würde gerne eine Datenbank verwenden, aber es sind die Systemadministratoren des Unternehmens, die mich daran hindern, es zu tun:/ – kitsune
und irgendwie, für mich, die Möglichkeit von mehreren Servern scheint mich zu verhindern, Caching effizient zu verwenden, aber nicht von der Datei-Ansatz ... – kitsune