Je fais un projet Node.js qui contient des sous-projets. Un sous-projet aura une base de données Mongodb et Mongoose sera utilisé pour encapsuler et interroger db. Mais le problème est
- Mongoose ne permet pas d'utiliser plusieurs bases de données dans une seule instance de mangouste car les modèles sont construits sur une seule connexion.
Pour utiliser plusieurs instances de mangouste, Node.js n'autorise pas plusieurs instances de module car il dispose d'un système de mise en cache
require()
. Je sais désactiver la mise en cache du module dans Node.js mais je pense que ce n'est pas la bonne solution car il ne s'agit que de mangouste.J'ai essayé d'utiliser
createConnection()
etopenSet()
en mangouste, mais ce n'était pas la solution.J'ai essayé de copier en profondeur l'instance de mangouste ( http://blog.imaginea.com/deep-copy-in-javascript/ ) pour transmettre de nouvelles instances de mangouste au sous-projet, mais cela lance
RangeError: Maximum call stack size exceeded
.
Je veux savoir est-il possible d'utiliser plusieurs bases de données avec mangouste ou une solution de contournement pour ce problème? Parce que je pense que la mangouste est assez facile et rapide. Ou d'autres modules comme recommandations?
useDb
commande qui utilise le même pool de connexion.