基于node-mysql的高可用mysql連接基礎庫:easymysql
easymysql 基于node-mysql 開發而來,提供一個簡單、高可用的mysql連接基礎庫。主要特性如下:
- 支持query超時控制;
- 可控制的連接池支持,SQL總是盡可能早地被 可用的 空閑連接搶到并執行;
- 支持master-slave模式,基于
SHOW VARIABLES LIKE 'READ_ONLY'方式自動判斷主庫和從庫,運行期間自動感知主從切換; - 即將支持事務。
Usage
var Client = require('easymysql');
var mysql = Client.create({
'maxconnections' : 10
});
mysql.addserver({
'host' : '127.0.0.1',
'user' : 'write_user',
'password' : ''
});
mysql.addserver({
'host' : '127.0.0.1',
'user' : 'read_user',
'password' : ''
});
mysql.on('busy', function (queuesize, maxconnections, which) {
// XXX: write log and monitor it
});
mysql.query('SHOW DATABASES', function (error, res) {
console.log(res);
});
// bind params
mysql.query({
sql: 'select * from user where user =:user',
params: {user: 'xxoo'}
}, function (err, rows) {
console.log(rows);
});
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!