Question

Je travaille sur un projet qui est sur le point de commencer et, comme j'étais occupé avec un autre projet, mes collègues sont allés de l'avant et ont commencé à travailler sur les spécifications du nouveau. Quand je suis arrivé, ils venaient juste de choisir la persistance avec du SQL pur (j'ai tout de même accepté ma proposition d'ajouter Hibernate), mais ils ont insisté sur le fait que la réplication des données devait être effectuée à l'aide d'un outil appelé Symmetric DS , de dont je n'avais jamais entendu parler.

Cela me préoccupe car, autant que je sache, le fait d’avoir un serveur JBoss (les plans actuels ne doivent utiliser que Tomcat) avec EJB3 gère tous les tracas liés aux transactions et à la réplication et devrait nous épargner bien des maux de tête.

Comment voyez-vous ce Symmetric DS ? (notez que je n’ai absolument rien contre, c’est juste que je sais que JBoss existe depuis longtemps et qu’il a une réputation tout à fait respectable)

Comment compareriez-vous les deux solutions?

Merci!

MODIFIER : À propos, comment SymmetricDS traite-t-il les clés primaires en double? Je veux dire, si j'ajoute une ligne dans la base de données A et une autre dans la base de données B, les deux seront probablement ajoutées avec la même clé primaire, non? Comment SymmetricDS gère-t-il cela afin d'éviter les conflits? Cette la discussion sur le forum a semblé au début d'aborder une partie de cela, mais ne répond pas tout à fait à ma question.

Était-ce utile?

La solution

Je pense que EJB et SymmetricDS tentent de résoudre différents problèmes. EJB est un framework qui fournit (entre autres choses) la persistance à la base de données. SymmetricDS est une application qui capture les modifications apportées à une base de données et les applique à une autre base de données de manière asynchrone. En fait, les deux fonctionnent ensemble, vous permettant de facilement conserver des données d’un bean Java dans la base de données et de les répliquer sur d’autres bases de données distantes.

Vous pouvez déployer SymmetricDS sur JBoss ou Tomcat (il existe également des options autonomes et incorporées), et tout ce dont il se préoccupe est la base de données. Sous les couvertures, il utilise le framework Spring pour accéder à la base de données. Il installe les déclencheurs de base de données pour capturer les modifications et applique les modifications à la base de données cible de la même manière. Ainsi, si les lignes A et B ont été validées ensemble dans la base de données source, elles sont validées ensemble dans la cible.

J'espère que cela aide à clarifier les deux technologies. Il existe une communauté active sur SourceForge pour SymmetricDS qui se fera un plaisir de répondre aux questions et de donner des exemples de déploiement réussi:

http://sourceforge.net/projects/symmetricds

Bonne chance dans votre projet!

Eric

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