2014-01-28 33 views
0

不知道是否有人能指引我朝着正确的方向,但是我在Magento安装中有一个扩展,它会对“自身”执行curl请求,但它对完整域执行请求。curl请求在prod上花了近2分钟,在dev上花费了1.2秒

在我的开发服务器上(这个服务器不是专用于这个站点的,流量大致相当于现场),每次调用大概需要1.2到1.4秒。

但是当我在我的活服务器上执行相同的操作时,它需要花费一分多半的时间,坦白地说,我不知道如何调试它。

这不是数据库,即使我dev的连接需要同时实时数据库服务器...

这不是代码,因为代码库是完全一样的...

还有什么可以导致这样的问题?

我会发布的要求,但它是在1000线...

+0

'curl_setopt($ CH,CURLOPT_SSL_VERIFYPEER,FALSE);'然后再试一次 – Dave

+0

你应该尝试找出其中的部分代码运行速度慢的 - 你还不确切地知道它是卷曲。也许在脚本中添加一些错误日志记录,并在运行时记录错误日志。或者考虑使用Xdebug来剖析代码 - http://xdebug.org/docs/profiler – madebydavid

+0

换句话说,您正在Magento扩展中使用外部Magento API?这是不好的做法。改用内部API(http://docs.magentocommerce.com/elementindex.html)。 – hindmost

回答

0

你没有提到它的执行90-120秒后返回。

您可以通过使用CURLOPT_CONNECTTIMEOUT选项设置一些值来运行脚本,以检查其是否与主机连接的问题。

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); 

如果您发现设置此选项后花费的时间较少,那么它肯定是主机和服务器之间的连接问题。

此外,您还可以通过启用卷曲调试模式来运行脚本。

curl_setopt($ch, CURLOPT_VERBOSE, true); 
相关问题