Question

En réponse à ma question, Comment améliorer le performances de l'application d'architecture client-serveur

J'ai décidé de maintenir une base de données centralisée et plusieurs configurations de base de données serveur esclave. Je prévois d’utiliser Symmetric DS pour la réplication entre la base de données esclave et la base de données maître. Chaque configuration serveur-base de données serait installée plus près du client. Idéalement, je veux que le client demande à être routé vers la base de données de serveur esclave le plus proche pour une raison évidente. Puisque j'utilise RMI pour me connecter au serveur, je souhaite savoir s'il existe actuellement un produit / une API disponible, ce qui permettrait de résoudre ce problème.

Toute autre solution que celle ci-dessus est hautement appréciée:)

Remarque: La refactorisation du code client est certainement une alternative, mais comme l’application est très volumineuse, c’est un risque énorme (peut casser le code existant), prendre du temps. cher.

Était-ce utile?

La solution

Jetez un coup d'œil au hachage distribué et cohérent:

http://en.wikipedia.org/wiki/Distributed_hash_table#Keyspace_partitioning http://fr.wikipedia.org/wiki/Consistent_hashing

Barebones, vous devez configurer une variante de hachage cohérente qui prend l'identifiant du client (à la place de la "clé") et localise le serveur le plus proche. L'avantage supplémentaire est que si l'un des esclaves tombe en panne, votre infrastructure sera acheminée de manière transparente vers le serveur le plus proche.

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