我正在使用node.js mysql驅動程序。但是當服務器負載很重時,我猜想mysql正在爲查詢做排隊。我怎樣才能防止這一點?我想立即查詢。Node.js mysql查詢響應延遲
我該如何解決這個問題?我的查詢是滯後的。
我的代碼:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'ip',
user : 'db',
password : 'pass'
});
connection.connect(function(err) {
if (err) {
console.error('error connecting: ' + err.stack);
return;
}
console.log('connected as id ' + connection.threadId);
});
connection.query('USE db');
connection.query({ sql:"select token,COUNT(token) as sayim from tokens where username=? or anon=?", timeout: 10000},[data,data],function(err,info) {
if (info[0].sayim != 0) {
callback(info[0].token);
}else{
callback("0");
}
});
PS:服務器沒有此返回任何錯誤。但是當我做查詢時,服務器在大約10秒後響應。如果服務器不在高負載下,它會立即響應。
你的mysql配置與這個問題有關?即允許多少個併發連接,它優先化哪種負載平衡等等? –
我已經允許5000個併發連接。但我不認爲MySQL服務器與這個問題沒有關係。因爲我的CPU負載值是好的,我想在phpmyadmin中運行相同的查詢,並且服務器在0.350ms內響應。我想我有node.js mysql驅動程序的問題。 –