Ricerca…


Utilizzo di un pool di connessioni senza database

Raggiungimento della multi-tenancy sul server di database con più database ospitati su di esso.

La multitenancy è un requisito comune delle applicazioni aziendali al giorno d'oggi e la creazione di un pool di connessioni per ogni database nel server di database non è consigliata. quindi, ciò che possiamo fare è creare un pool di connessioni con un server di database e passare da un database all'altro su un server di database su richiesta.

Supponiamo che la nostra applicazione abbia diversi database per ogni azienda ospitata sul server di database. Ci collegheremo al rispettivo database aziendale quando l'utente raggiunge l'applicazione. ecco l'esempio su come farlo: -

var pool  = mysql.createPool({
      connectionLimit : 10,
      host            : 'example.org',
      user            : 'bobby',
      password        : 'pass'
    });
    
pool.getConnection(function(err, connection){
    if(err){
        return cb(err);
    }
    connection.changeUser({database : "firm1"});
    connection.query("SELECT * from history", function(err, data){
        connection.release();
        cb(err, data);
    });
});

Lasciatemi fare un esempio:

Durante la definizione della configurazione del pool non ho fornito il nome del database, ma ho fornito solo il server del database

{
  connectionLimit : 10,
  host            : 'example.org',
  user            : 'bobby',
  password        : 'pass'
}

quindi, quando vogliamo utilizzare il database specifico sul server di database, chiediamo la connessione al database dei risultati utilizzando: -

    connection.changeUser({database : "firm1"});

puoi consultare la documentazione ufficiale qui



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow