Question

De temps en temps, je trouve des applications Web qui possèdent une sorte d’historique / de version d’article dans lesquelles vous pouvez sélectionner une version précédente de l’article / du contenu et effectuer un "restauration" et une restauration. processus. Je prévois d’en avoir un comme celui-là, mais j’ai quelques idées en tête et j'aimerais connaître votre opinion.

1) Une sauvegarde automatique doit-elle ajouter une nouvelle entrée à la liste de l'historique? Je voudrais implémenter une fonctionnalité de sauvegarde automatique, alors, je me demande si chaque sauvegarde automatique doit ajouter une nouvelle entrée dans la liste de l'historique des versions? Ou devrais-je avoir une "liste" séparée? (= dernière sauvegarde automatique uniquement) pour les articles enregistrés automatiquement? Je pense que l'échelle est plus logique. Si le navigateur se bloque (ou wtvr), l'utilisateur peut restaurer une sauvegarde automatique. La liste de l'historique concerne les articles qu'il a sauvegardés en appuyant sur le bouton Soumettre. D'accord?

2) Combien de versions? Si l'utilisateur continue à modifier l'article (ajoutons de nouveaux paragraphes), puis enregistre l'article, combien de versions différentes de l'article devraient-elles exister au maximum? Devrais-je laisser l'utilisateur décider (quelle était ma pensée initiale)? Quelle est généralement une valeur raisonnable? dix? Le versionnage est-il une mauvaise chose en matière de stockage sur disque? Si chaque article comporte 10 versions, il dispose de 10 fois plus d'espace pour tout le contenu de l'article ... Imaginez maintenant que vous disposiez de 1 Mo de contenu d'article, ce serait 10 Mo pour l'ensemble de la base de données et certains hôtes ont des limites telles que la taille d'une base de données. Ceci conduit à la question 3:

3) Avez-vous déjà supprimé des versions? Si les versions des articles sont restées intactes assez longtemps, les supprimerez-vous? Si oui, quelle est la durée que vous avez définie? Un utilisateur défini? Une semaine est-elle une valeur par défaut suffisante? Si le temps n'est pas l'indicateur, alors qu'est-ce que c'est? Et si le temps est l'indicateur, exécutez-vous Crons pour effectuer les nettoyages ou quoi?

4) Comment déterminer un "changement"? Si l'utilisateur ajoute un point à la fin de l'article et appuie sur le bouton de sauvegarde, vais-je quand même créer une nouvelle entrée d'historique? Comment gérez-vous cela? Comparez-vous simplement si l'article a changé et si vous créez une nouvelle entrée?

C’est beaucoup de questions que je connais, mais si vous avez des opinions ou des réflexions, je suis ravi de les entendre. :)

Était-ce utile?

La solution

  

Si chaque article a 10 versions, c'est   essentiellement 10x plus d'espace pour la   contenu de l'article entier ... maintenant Imagine   ayant 1 Mo de contenu d'article, il   serait de 10 Mo pour l'ensemble de la base de données et   certains hôtes ont des limites comme la taille de   une DB.

Si vous utilisez un système de contrôle de version sur le serveur Web pour gérer les entrées réelles (par exemple, rcs, subversion), vous n'avez pas à vous soucier de savoir si les modifications sont majeures ou non, ni combien il faut en conserver, mais vous devez également les enregistrer. sur l'espace disque. Ces systèmes sont déjà conçus pour enregistrer uniquement les modifications entre les versions. Donc, un changement de caractère dans un fichier 10M devrait toujours être d'environ 10M pour les deux versions.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top