Je travaille actuellement sur un projet qui utilise JPA (Toplink, actuellement) pour sa persistance. Actuellement, nous utilisons un seul serveur d'application, mais pour la redondance, nous aimerions ajouter un équilibreur de charge et un autre serveur d'application (et peut-être même plus au fur et à mesure de sa croissance).JPA avec plusieurs serveurs
D'abord, je suis confronté au problème de la mise en cache JPA. Étant donné que deux processus mettent à jour la même base de données, le cache JPA renvoie la valeur mise en cache plutôt que d'aller à la base de données. Je vois comment désactiver cela, et la base de données elle-même implémente un niveau de mise en cache. Est-ce que éteindre la cache complètement la façon d'aller ici? Je vois les moyens de dire à JPA de toujours obtenir de la base de données au niveau de la requête, mais dans un environnement multi-serveur, il semble que vous voudrez toujours que cela se produise. En plus de cette question spécifique, je suis intéressé par tous ceux qui ont implémenté une solution JPA avec plusieurs serveurs d'applications et les problèmes qui se sont posés pendant l'implémentation (et toutes les suggestions que vous avez).
Merci beaucoup.
À quoi faites-vous référence? Quelque chose de TopLink (JPA 1.0 n'a pas normalisé le cache L2)? Pouvez-vous clarifier? –
Je parle ici de la mise en cache de session (http://weblogs.java.net/blog/guruwons/archive/2006/09/understanding_t.html). – MikeTheReader
Pourquoi n'avez-vous pas fourni ce lien lorsque vous postez votre question? L'ajout de contexte ou de liens ne fait généralement pas de mal, en particulier lorsqu'une question concerne une fonctionnalité spécifique d'un fournisseur et non une APP. –