sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo utilizo las mismas conexiones MySQL para toda mi aplicación Node.js?

Puede crear un módulo separado, llámelo mysqlLib.js que será responsable de crear un grupo y devolver conexiones:

var mysql = require("mysql");
var pool = mysql.createPool(/* credentials go here */);

exports.getConnection = function(callback) {
  pool.getConnection(function(err, conn) {
    if(err) {
      return callback(err);
    }
    callback(err, conn);
  });
};

y en cualquier módulo/archivo que necesite una conexión mysql, puede hacer esto:

var mysqlLib = require("mysqlLib");

mysqlLib.getConnection(function(err, mclient) {
  //do queries that you need
});

La forma en que require() funciona, el código en mysqlLib.js solo se ejecutará una vez, por lo que solo se creará un grupo incluso si require("mysqlLib.js"} se llama en varios archivos. Consulte esta sección de los documentos de node.js para obtener una explicación del almacenamiento en caché del módulo.