使用 Node.js 和 MySQL 進行連接池
優化應用程式對 MySQL 的使用可以提高效能和效率。本文探討使用 node-mysql 模組的連接池技術。
連接池
連接池消除了為每個查詢建立與資料庫的單獨連接的需要。相反,維護可重複使用連線池,提高查詢執行速度並減少資源消耗。
實作連線池
要實作連線池,請使用下列指令建立池物件mysql模組的createPool()函數:
var mysql = require('mysql'); var pool = mysql.createPool({ host: 'localhost', user: 'root', password: 'root', database: 'guess' });
將池物件儲存在單獨的模組中(例如mysql.js)以供重複使用。
查詢資料庫
要使用連接池執行查詢,需要 mysql.js 模組並取得連線:
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); }); }); };
最佳實踐
從池中返回連接
為了簡化連接檢索,修改mysql 模組以返回檢索連接的函數:
var getConnection = function (callback) { pool.getConnection(function (err, connection) { callback(err, connection); }); }; module.exports = getConnection;
這允許您直接取得連線:
var getConnection = require('../db/mysql'); getConnection(function (err, connection) { // Use the connection... });
以上是Node.js 和 MySQL 的連接池如何提高應用程式的效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!