Du kan oprette et separat modul, kald det mysqlLib.js
der vil være ansvarlig for at oprette en pulje og returnere forbindelser:
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);
});
};
og i ethvert modul/fil, der har brug for en mysql-forbindelse, kan du gøre dette:
var mysqlLib = require("mysqlLib");
mysqlLib.getConnection(function(err, mclient) {
//do queries that you need
});
Måden require()
på virker, koden i mysqlLib.js
vil kun blive kørt én gang, så kun én pulje vil blive oprettet, selvom require("mysqlLib.js"}
kaldes i flere filer. Se dette afsnit
af node.js-dokumenterne for en forklaring af modul-cacheing.