Top 3 Gründe, kein "Blog-System" zu entwickeln, das ASPX-Dateien im laufenden Betrieb generiert

8

In diesem Frage Das OP impliziert, dass er das von ihm entwickelte Blog-System auf die automatische Erstellung von .aspx-Dateien stützen möchte, eine für jeden neuen Blog-Eintrag. In meiner Antwort auf seine Frage (die sich auf etwas anderes bezieht) sagte ich ihm, dass ich ihn davon abhalten würde, solch eine Herangehensweise zu verwenden, aber ohne wirkliche Gründe anzugeben. Er will jetzt Gründe, warum es keine gute Idee ist, und ich benutze diese Frage, um zu sehen, ob die Gemeinschaft eine überzeugende Liste von Gründen für ihn aufstellen kann, einen anderen Ansatz zu verwenden, wie zum Beispiel einen, der einen dbms-Code verwendet - Wiederverwendung, URL-Neuschreiben, MVC und was nicht.

    
Klaus Byskov Pedersen 10.03.2010, 17:25
quelle

3 Antworten

5

Es gibt zwei große Arten von CMS-Publishing-Plattformen:

  • Diejenigen, die den Inhalt statisch generieren . Einige Publishing-Plattformen generieren den Inhalt statisch. In diesem Fall sind die generierten Dateien nicht dynamisch und sollten HTML-Dateien sein. Das System muss die Möglichkeit haben, alles neu zu generieren, z. B. wenn sich eine Vorlage geändert hat. Es gab eine Zeit, als diese Lösung einige Vorteile hatte:
    • Sicherheit : Die Sicherheit wird auf Dateisystemebene verwaltet
    • Suche : Die Volltextsuche war einfach, weil alles dateibasiert war
    • Leistung : Verwendet weniger CPU.
    • Interaktivität : nicht möglich
    • Verbreitung von Inhalten : Der einzige Grund, um eine solche Plattform zu erstellen oder auszuwählen, ist, wenn Inhalte über andere Kanäle als das Web verbreitet werden müssen, z. CD, herunterladbare Zeitschrift, etc.

.

  • Diejenigen, die den Inhalt dynamisch rendern . Für die Website ist es am einfachsten, die Seite dynamisch zu rendern.
    • Sicherheit : Sicherheit kann mit einem komplexen Schema usw. überprüft werden.
    • search Suchsystem hat sich entwickelt und integriert sich jetzt gut in heterogene Quellen: es kann Volltext in Datenbanken, Dateien usw. sein.
    • Leistung : Das ist kein Problem mehr.
    • Interaktivität : Dies ist viel flexibler: Inhalte können an den Besucher angepasst werden, Nutzer können die Seite bewerten, Kommentare hinzufügen usw.
    • Verbreitung von Inhalten : muss natürlich online sein

Ein hybrides System, in dem Sie statische Dateien erzeugen, die dynamisch gerendert werden (.aspx) ist für mich ein Unsinn - es hat die Nachteile von beiden.

    
ewernli 10.03.2010, 18:05
quelle
8

Das Generieren separater ASPX-Dateien für jeden Artikel führt zu einer ineffizienten Nutzung der Serverressourcen:

  • Jede neue aspx-Datei wird in eine DLL kompiliert. Dies bedeutet einen zusätzlichen Zeitaufwand für die Ausführung des Kompilierens des Artikels und des Speicheraufwands durch die Neuerstellung einer neuen Anwendungsdomäne, die diese neue DLL enthält

  • Es ist möglich, ASP.Net so zu konfigurieren, dass alle ASPX-Dateien in einer einzigen DLL-Datei kompiliert werden, aber das wäre noch schlimmer: ALLE Artikel müssen jedes Mal neu kompiliert werden, wenn ein neuer Artikel erstellt wird

Eine akzeptablere Lösung (aber selbst dann, nicht die, die ich empfehlen würde) wäre statische .html-Dateien zu generieren.

    
ckarras 10.03.2010 17:36
quelle
7

.aspx-Seiten dienen zum dynamischen Generieren von HTML (und Javascript etc.). Entweder sollte dieselbe kleine Gruppe von ASPX-Seiten eine Ausgabe für alle Blogeinträge (in einer Reihe von Feldern gespeichert) generieren, oder (aus Leistungsgründen) kann vorgeneriertes HTML in den db (best) - oder .html-Seiten gespeichert werden / p>

Durch das Generieren einer ASPX-Seite für jeden Blogeintrag wird das Tool zum Generieren von Inhalt generiert. Es macht keinen Sinn für irgendeine Normale. Es wird unnötigen Overhead in diesem System geben. Ohne seinen genauen Plan zu kennen kann ich immer noch sicher sein, dass mindestens einige der folgenden Punkte zutreffen:

  • Duplikation von Code in den ASPX-Seiten, große Schwierigkeiten bei der Aktualisierung des Layouts / Verhaltens der Website
  • erheblicher und unnötiger Overhead von IIS, der verarbeitet und ständig viele zusätzliche ASPX-Seiten neu kompiliert.
  • Suche wird ein Albtraum sein, da der Inhalt in Dateien sein wird. Schwierig einzurichten und es wird nie effizient sein.
  • Bearbeiten, Kommentare hinzufügen, moderieren wird. . . sehr hart.
  • Sicherheit wird kompliziert sein
Patrick Karcher 10.03.2010 17:34
quelle

Tags und Links