/ / Comment plusieurs applications Web d'une même instance Tomcat peuvent-elles partager un pool de connexions de base de données? - java, hibernation, tomcat, saas, multi-locataire

Comment plusieurs applications Web dans la même instance tomcat peuvent-elles partager un pool de connexions de base de données? - java, hibernation, tomcat, saas, multi-locataire

Gardant à l'esprit que chaque application Web a sa propre base de données séparée (mais toutes les bases de données sont sur le même serveur de base de données).

Le scénario est que j'ai une application saas multi-locataire - je déploie la même application pour chaque client. Chaque client travaille sur une base de données appelée db_cid, où cid est l'identifiant du client, c'est-à-dire un identifiant client unique.

Travailler avec Hibernate.

Réponses:

4 pour la réponse № 1

Si vous avez besoin de partager des ressources entre Webapplication, vous devez laisser le conteneur Web les gérer et les placer dans JNDI. L'application Web peut alors extraire très facilement les ressources d'un contexte JNDI.

Les pools de connexions JDBC sont si typiques que chaque conteneur Web explique comment les configurer.

Pour les programmes autonomes, nous utilisons Simple JNDI http://www.osjava.org/simple-jndi/ qui fournit la configuration externe qui nous permet de séparer complètement la base de code de la configuration.

Essayez, vous l’aimerez :)


0 pour la réponse № 2

Avez-vous pensé à configurer une connexion JNDI dans le contexte tomcat (global)? Ce peut être une connexion en pool, comme décrit dans Exemple de source de données JNDI.