ADO和msqli连接很慢(ADO and msqli connections very slow)

2019-09-18 09:04发布

我遇到了我的生产Web服务器很慢ADO和mysqli的连接。 目前的软件设置的Windows 2008服务器R2标准版SP1,2.4的Apache,PHP 5.3.10中,MySQL 5.5.24,梨1.94,Zend引擎的版本2.30。

我已经使用了XDebug异型的代码,它显示了初始连接选修了1200ms每个(无论页面被访问),而我的本地开发机器和另一个测试服务器的连接,只需要大约8毫秒的。 对于网站的代码都在同步通过SVN除了PHP,梨,MySQL和Apache的ini和conf文件。 我做这些的diff检查差别和有没有。 该数据库的内容是一个完整的副本,以及。 所以没有任何防火墙或网络问题,生产服务器一切都在同一台计算机上。

第一连接配置文件有以下调用堆栈:

ADOConnecton->Connect
ADODB_mysql->_connect
php::mysql_connect

第二个:

php::mysqli->mysqli

有什么建议么?

Answer 1:

通常在(第一)连接缓慢依赖于DNS解析。 也许:

  • 客户端解析服务器名称
  • 服务器来解析客户端名称相匹配的访问规则

让客户端/服务器让使用主机文件知道服务器/客户端地址: http://en.wikipedia.org/wiki/Hosts_(file)



Answer 2:

我编辑了mysql的my.ini的改变mysql服务只绑定到IPv4环回适配器。

[mysqld]
...
bind=127.0.0.1

我也改变了\的public_html \的conf \ face.ini使用IPV4回送地址,而不是本地主机。 (变更“本地主机”到“127.0.0.1”)

之后,所有的问题就走了。 我不知道这是否是因为机器有半打的IP地址或它试图决定是否使用IPv6或IPv4。



文章来源: ADO and msqli connections very slow