【问题标题】:Asynchronous HTTP-requests on sqlite database in Node.jsNode.js 中 sqlite 数据库上的异步 HTTP 请求
【发布时间】:2017-02-21 15:30:15
【问题描述】:
我目前正在尝试测试具有多个异步 HTTP 请求的小型服务器,但是我的 sqlite3 数据库似乎阻止同时发出 SQLITE_BUSY 的查询。
db.exec(query, (err) => {
if (err !== null) {
callback('Insertion failed.');
} else {
callback(null);
});
有没有办法使用 sqlite3 模块来规避这个问题?
提前致谢。
【问题讨论】:
标签:
javascript
node.js
asynchronous
sqlite
【解决方案1】:
你能用 async.queue 吗?
var async = require('async');
var q = async.queue(function(task, callback) {
db.exec(task.query, function(err) {
callback('Insertion failed.');
});
callback();
}, 1);
q.drain = function() {
console.log('queue is empty, ready for more query');
};
q.push({query: "Your SQL INSERT query"}, function(err) {
console.error(err);
});