我正在一个非常 MySQL DB 驱动的网站上工作。所以我有很多疑问。
在本主题中,每个人都建议在页面顶部连接到数据库,并在页面底部断开连接。
我想知道什么更有效,或者一般来说是最佳实践:每页建立一个数据库连接,还是只根据需要连接?(或者没有普遍的答案,这取决于?)
此外,我正在寻找为什么这是最佳实践,您从哪个角度看待场景(例如安全性,速度,......我不知道数据库连接可能会影响什么?!)
我相信这个问题在此之前已经被问过- 但不是针对 PHP,因此我觉得它没有帮助。
我目前的做法是通过mysqli连接到数据库对于我编写的每个函数,并在函数末尾断开连接,因为它对我来说似乎更干净。这样,如果页面不调用需要数据库访问的函数,则永远不会打开连接。但是,根据用户在网站上的操作,每个页面加载可能最多有大约 10 个连接。现在我认为这可能是资源的公平分配。如果我理解正确,则只能始终打开 1 个 DB 连接。因此,我假设所有连接请求都将排队。因此,如果用户有多个、长且复杂的查询,则该用户不会阻塞所有流量,因为在每个查询之间,可能会处理其他短查询。但这只是我在编造东西,我不知道它是否真的会那样工作......:D
我也知道这里的很多开发人员都喜欢使用PDO。刚开始开发的时候选择使用mysqli,暂时没有切换的打算。我希望我的问题适用于这两个图书馆。
谢谢 :-)