gpt4 book ai didi

php - 使用多个 mysqli 对象或一个通用对象

转载 作者:行者123 更新时间:2023-11-29 12:13:50 25 4
gpt4 key购买 nike

在我的服务器中,我的数据库很少(大约 12 个,每个数据库都有几个表)。问题是,在一个 php 类中,我需要在两个不同的数据库中执行两个查询。在优化问题上,是不是更快

一个通用 mysqli 对象并对其调用两个查询:

$database = new mysqli('localhost', 'username', 'password'); #see, no database selected

$query1 = "select * from database1.tableX";
$res1 = $database->query($query1);

$query2 = "select * from database2.tableY";
$res2 = $database->query($query2);

或者每个数据库有两个不同的 mysqli 对象

$database1 = new mysqli('localhost', 'username', 'password', 'database1');

$database2 = new mysqli('localhost', 'username', 'password', 'database2');

$query1 = "select * from tableX";
$res1 = $database1->query($query1);

$query2 = "select * from tableY";
$res2 = $database2->query($query2);

考虑到我在同一台服务器上有更多的数据库;哪种解决方案更快?

最佳答案

我认为第一个更好,因此您仅使用 1 个对象连接到数据库,从而使数据库在查询中继承。第二次你使用2个对象,这会消耗更多的资源......但是说服务器可能是一台拥有大量资源的机器,这不会影响太多,在你关闭连接的那一刻,对象被获取由垃圾收集器处理。

编辑1)。 Controller mysqli 在内部应该采用它需要的squema。所以我认为您不会看到速度上的差异。

关于php - 使用多个 mysqli 对象或一个通用对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30200402/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com