2014-01-28 59 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); 
相關問題