我在 上使用better-sqlite3,Node
但我怀疑我的问题也适用于node-sqlite3。
我基本上有 2 个简单的问题,与服务器呈现的网站有关:
我需要显式调用
.close()
数据库吗?我似乎记得在某处读过它会在当前范围(如当前函数)退出时自动关闭。如果我从不调用.close()
Web 服务器场景并接受大量请求怎么办?如果您有一堆不同的组件(身份验证、授权、本地化、支付等),并且每个组件可能需要也可能不需要在请求的整个生命周期内访问数据库(这些组件的生命周期非常短暂,除了付款),是不是更好
- 在服务器的生命周期内拥有一个 db 连接并将其传递
- 在请求的生命周期内拥有一个数据库连接并将其传递
- 每次我需要某些东西时打开一个新连接,每个请求可能 2-3 次(并在函数返回时显式或隐式关闭它,如果是这样的话)
谢谢