1

我需要连接到外部 MySQL 数据库并获取一些数据。我对此有一些担忧:

  1. 连接到远程服务器会增加页面的加载时间,我希望它尽可能低。
  2. 我需要加载的数据是额外的,如果远程服务器出现故障,我不想等待额外的时间(直到超时)。

使用 PHP 连接到远程 MySQL 数据库的最佳实践是什么?基本上,我希望我的网站加载时间受到的影响尽可能小。

如果它不能用 PHP 完成,我愿意采用不同的方法。

4

2 回答 2

1

如果可能的话,为一端构建一个对数据库具有本地访问权限的 API,并在您的远程构建一个 API 使用者。然后,您可以对 API 提取调用设置超时。围绕数据库编写一个简单的 JSON 类型的包装器通常并不困难。

替代方案很混乱,例如 VPN、SSH 桥接器或使用 SSL/TLS 加密远程访问 MySQL 端口。当您的连接不可靠或数据包丢失时,数据库驱动程序将会遇到困难。性能充其量是不稳定的。

于 2013-05-22T00:44:17.977 回答
0

您可以尝试 mysqli_real_connect 的 MYSQLI_OPT_CONNECT_TIMEOUT选项。不过它有一些怪癖,看看这个

也就是说,我同意@tadman,构建服务器 API 可能是最好的选择。对无法访问的远程服务器的同步调用将使您自己的服务无法用于所有实际目的。

于 2013-05-22T00:59:05.190 回答