1

当套接字事件发生时,我使用 NodeJS、MariaDB 和mariasql来存储一些数据。该事件可以每 10 分钟发生一次,也可以延迟数小时。

现在我想知道当长时间没有查询执行时是否会发生连接超时。

我的第二个问题是:如果以后需要执行另一个查询,我是否必须在每次查询后执行 .end() 并重新建立连接。

这就是简单的代码

db.query(
    'INSERT INTO log (log_id, data) VALUES (?, ?)',
    [ 1, 'log..' ],
    function(error, result) {
        ...
    }
);

db.end(); // Do I have to end the connection and reestablish later?
4

1 回答 1

0

尝试保持连接打开“几个小时”真的很糟糕。可能存在网络故障或其他故障。您正在消耗 MySQL 服务器上的资源。等等。

在任何情况下,您都应该准备好处理丢失的连接,因此您最好关闭连接,这样通常事情就会发生可预见的情况。

于 2015-12-09T22:41:52.830 回答