Regroupement de connexions avec Node.js et MySQL
L'optimisation de l'utilisation de MySQL par votre application peut améliorer les performances et l'efficacité. Cet article explore les techniques de regroupement de connexions à l'aide du module node-mysql.
Regroupement de connexions
Le regroupement de connexions élimine le besoin d'établir des connexions individuelles à la base de données pour chaque requête. Au lieu de cela, un pool de connexions réutilisables est conservé, améliorant la vitesse d'exécution des requêtes et réduisant la consommation de ressources.
Implémentation du pool de connexions
Pour implémenter le pool de connexions, créez un objet pool à l'aide la fonction createPool() du module mysql :
var mysql = require('mysql'); var pool = mysql.createPool({ host: 'localhost', user: 'root', password: 'root', database: 'guess' });
Stockez l'objet pool dans un module séparé (par exemple, mysql.js) pour réutilisation.
Interrogation de la base de données
Pour exécuter des requêtes à l'aide du pool de connexions, nécessitez le module mysql.js et obtenez une connexion :
var mysql = require('../db/mysql').pool; var test = function (req, res) { mysql.getConnection(function (err, conn) { conn.query("select * from users", function (err, rows) { res.json(rows); }); }); };
Bonnes pratiques
Renvoi d'une connexion depuis le Pool
Pour simplifier la récupération de connexion, modifiez le module mysql pour renvoyer une fonction qui récupère une connexion :
var getConnection = function (callback) { pool.getConnection(function (err, connection) { callback(err, connection); }); }; module.exports = getConnection;
Cela permet d'obtenir directement des connexions :
var getConnection = require('../db/mysql'); getConnection(function (err, connection) { // Use the connection... });
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!