J'ai une page web qui affiche une grande quantité de données sur le serveur. La communication se fait via ajax.
Chaque fois que l'utilisateur interagit et les modifications de ces données (Disons Un utilisateur renomme quelque chose), il indique au serveur de l'action et le serveur renvoie les données modifiées.
Si l'utilisateur B accède à la page en même temps et crée un nouvel objet de données, il sera de nouveau dire au serveur via ajax et le serveur sera de retour avec le nouvel objet pour l'utilisateur.
Sur Une de la page, nous avons les données avec un objet renommé. Et sur B de la page, nous avons les données avec un nouvel objet. Sur le serveur de données est à la fois un objet renommé et un nouvel objet.
Quelles sont mes options pour garder la page en synchronisation avec le serveur lorsque plusieurs utilisateurs l'utilisent en même temps?
Des options telles que le verrouillage de l'ensemble de la page ou la vidange de l'ensemble de l'état de l'utilisateur sur tous les changements sont plutôt à éviter.
Si cela peut aider, dans cet exemple précis de la page web des appels statiques webmethod qui exécute une procédure stockée dans la base de données. La procédure stockée renvoie toutes les données qu'il a changé et rien de plus. La statique webmethod transmet ensuite le retour de la procédure stockée pour le client.
Bounty Edit:
Comment concevoir un environnement multi-utilisateur de l'application web qui utilise Ajax pour communiquer avec le serveur, mais évite les problèmes de simultanéité?
I. e. l'accès simultané à des fonctionnalités et à des données sur une base de données sans aucun risque pour les données ou la corruption de l'état