【问题标题】:When to close Database with node-sqlite3 and express?何时使用 node-sqlite3 关闭数据库并表达?
【发布时间】:2017-08-13 04:11:28
【问题描述】:

我的问题是确定何时关闭从 expressjs 后端到 sqlite 数据库的数据库连接。

我基本上想要实现的是在整个服务器正常运行期间打开并在服务器关闭时关闭的数据库连接。

var express = require('express')
var app = express()
var sqlite3 = require('sqlite3').verbose();

var db = new sqlite3.Database(data/Test.db);

//use db as needed 

var server = app.listen(8081, function () {
    var host = server.address().address
    var port = server.address().port
    console.log("Example app listening at http://%s:%s", host, port)
});

//on shutdown db.close();

我查看了这些威胁:

Stack overflow: process.on('exit', callback)

Github issue: App has no app.close()

但如果我用ctrl+c 杀死我的快递服务器,建议的解决方案对我不起作用。

那么关于如何在服务器关闭时处理打开的数据库连接的“最佳实践”是什么?

【问题讨论】:

    标签: node.js express sqlite node-sqlite3


    【解决方案1】:

    SIGINT 是您正在寻找的信号;大多数终端在Ctrl+C 上发送SIGINT

    你可以试试这样的 -

    process.on('SIGINT', () => {
        db.close();
        server.close();
    });
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-21
    • 1970-01-01
    • 2013-03-12
    • 1970-01-01
    • 2018-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多