Je crée un système où plusieurs utilisateurs doivent créer, visualiser et modifier un ensemble d'objets simultanément.
Le problème avec lequel je suis en difficulté consiste à répliquer les modifications apportées aux objets entre les systèmes. La concurrence distribuée est difficile et je souhaite déléguer cette complexité à quelqu'un qui sait ce qu'il fait. Quelles sont les bibliothèques / frameworks qui contribueraient à la partie de réplication?
J'ai déjà trouvé XSTM et sa mission semble être presque exactement ce dont j'ai besoin, mais malheureusement, la partie GWT ne semble pas encore prête et le projet semble avoir un avenir incertain.
S'il n'y a rien de vraiment utile là-bas, alors je cherche des idées sur les algorithmes qui seraient bons pour cela?
Je pense actuellement à quelque chose inspiré par DVCS et à la transformation opérationnelle. Le serveur accepterait les ensembles de modifications pour les objets et rejeterait les écritures contradictoires. Les clients suivraient le dernier état connu du serveur et les changements effectués localement, détectent les conflits entre les modifications publiées et les modifications locales et réduisent les changements locaux non conformes au statut de serveur reçu.
Est-ce qu'une base de données distribuée comme Cassandra est une option? Il fournit probablement plus que vous avez besoin et besoin au moins 3 noeuds en cours d'exécution cependant.