8
votes

Top 3 raisons de ne pas développer un "système de blog" qui génère des fichiers ASPX à la volée

dans ce Question L'OP implique qu'il souhaite baser le système de blog, il se développe sur la création automatique de fichiers .aspx, une pour chaque nouvelle entrée de blog. Dans ma réponse à sa question (qui est liée à autre chose), je lui ai dit que je le découragerais d'utiliser une telle approche, mais sans donner de vraies raisons. Il veut maintenant des raisons pour les raisons pour lesquelles ce n'est pas une bonne idée, et j'utilise cette question pour voir si la communauté peut proposer une liste suffisamment convaincante de motifs d'utiliser une autre approche, telle que l'une utilisant un SGBD, le code -Ruse, réécriture de l'URL, MVC et quoi non.


2 commentaires

Pourquoi n'ajouter-vous pas à cette question plutôt que de poster une nouvelle question et de relier cette question.


@Jonh, car l'autre question n'est pas directement liée à cette discussion.


3 Réponses :


7
votes

Les pages .aspx sont destinées à générer dynamiquement HTML (et JavaScript, etc.). Soit le même petit ensemble de pages .aspx devrait générer une sortie pour toutes les entrées de blog (stockées dans une série de champs) ou (pour des raisons de performances) HTML pré-générées pouvant être stockées dans les pages DB (meilleures) ou .HTML. < / p>

générer une page .aspx pour chaque entrée de blog génère l'outil pour générer du contenu. Cela n'a aucun sens pour une normale. Il y aura des frais généraux inutiles dans ce système. sans connaître son plan exact , je peux toujours être sûr qu'au moins certains des éléments suivants s'appliquent:

  • Duplication du code dans les pages .aspx, grande difficulté à mettre à jour la mise en page / comportement du site
  • Des frais généraux substantiels et inutiles de IIS doivent traiter et constamment recompiler de nombreuses pages supplémentaires.
  • La recherche sera un cauchemar, car le contenu sera dans fichiers . Difficile à mettre en place et il ne sera jamais efficace.
  • Édition, ajout de commentaires, modérateur sera. . . vraiment dur.
  • la sécurité sera compliquée

0 commentaires

8
votes

Générer des fichiers Aspx distincts pour chaque article est inefficace utilisation des ressources du serveur:

  • Chaque nouveau fichier ASPX sera compilé à une DLL. Cela signifie une tenue de temps d'exécution supplémentaire pour la compilation de l'article + des frais généraux de mémoire par loisirs d'une nouvelle Appdomain contenant cette nouvelle DLL

  • Il est possible de configurer ASP.NET pour compiler tous les fichiers ASPX dans un seul fichier DLL, mais cela serait encore pire: tous les articles devront être recompantés à chaque fois qu'un nouvel article est généré < / li>

    Une solution plus acceptable (mais même alors, pas celle que je recommanderais) serait de générer des fichiers statiques .html.


0 commentaires

5
votes

Il existe deux grands types de plate-forme de publication CMS:

  • ceux qui génèrent le contenu statiquement . Une plate-forme de publication génère le contenu statique. Dans ce cas, les fichiers générés ne sont pas dynamiques et doivent être des fichiers HTML. Le système doit avoir la capacité de régénérer tout, par exemple, si un modèle a changé. Il y avait un moment où cette solution avait des avantages:
    • sécurité : la sécurité est gérée au niveau du système de fichiers
    • recherche : la recherche FullText a été facile, car tout était basé sur le fichier
    • performances : utilise moins de CPU.
    • interactivité : non possible
    • Diffusion de contenu : la seule raison de construire ou de choisir une telle plate-forme est si le contenu doit être diffusé via Autre canal que le Web E.G. CD, journal téléchargeable, etc.

      .

      • ceux qui rendent le contenu dynamiquement . Pour le site Web, le moyen le plus simple est de rendre la page de manière dynamique.
        • sécurité : la sécurité peut être vérifiée à l'aide de schéma complexe, etc.
        • recherche : le système de recherche se développe et s'intègre bien avec des sources hétérogènes maintenant: peut être du texte intégral dans la base de données, les fichiers, etc.
        • performances : ce n'est plus un problème.
        • interactivité : Ceci est beaucoup plus flexible: le contenu peut être adapté à l'utilisateur visiteur, les gens peuvent évaluer la page, ajouter un commentaire, etc.
        • Diffusion de contenu : doit être en ligne, bien sûr

          Un système hybride Vous générez un fichier statique qui sera rendu de manière dynamique (.aspx) est pour moi un non-sens - il présente les inconvénients des deux.


0 commentaires