【发布时间】:2018-08-23 12:15:12
【问题描述】:
我正在构建一个 Node 应用程序,它将查询简单和更复杂(多连接)的查询。我正在寻找有关如何管理 mySQL 连接的建议。
我有以下元素:
- server.js : 快递
- router1.js(虚构名称):Express Router 中间件
- router2.js(虚构名称):Express Router 中间件
每次请求“/router1/”时我应该连接到 mysql,就像在这个例子中一样,还是最好在启动时打开一个连接?如:
connection.connect();外部:
router.get('/',function(req,res){
...
}); ?
【问题讨论】:
-
我认为最好的方法不是留下打开的连接,而是使用连接池,以便可以重复使用连接。这是a link 如何连接连接。这是a good article,提供更多信息。
-
第一次打开连接时,会根据连接字符串创建一个连接池。在我们关闭一个连接后,连接返回到池中。当我们用相同的连接字符串打开另一个连接时,池化器会查看池中是否有可用的连接。如果池连接可用,则将其返回给调用者,而不是打开新连接。建议关闭连接或在 using 块内打开连接。这样,连接将被返回到池中以供将来重用