2010-03-27 44 views
4

我有一個簡單的PHP應用程序,打印'你好世界'。當我從命令行運行它需要6秒。這是正常的嗎?在「hello world」打印之前,似乎需要1秒鐘,然後是5秒鐘之後。緩慢的PHP命令行性能 - 這是正常的還是我有安裝問題?

我在Windows Server 2008 R2上運行PHP版本5.2.12。這可能是一個安裝問題,還是典型的?我手動安裝了PHP,然後添加了運行Drupal所需的任何組件。我記得添加的唯一PHP插件是MDB2,CGI支持也在那裏。

我習慣於從命令行運行的一個Lua項目,上百行代碼將在一秒之內運行。

我有一些單位測試,我從命令行運行,已經只有少數他們很慢。我從Netbeans運行它們,測試仍然非常緩慢。

我正是這樣運行:

C:\temp>copy con test.php 
<?php 
print('hello, world'); 
^Z 
     1 file(s) copied. 

C:\temp>test.php 
hello, world 
+0

不,這是不正常的。這不是解釋者的開銷。 你究竟打算從命令行運行它? – 2010-03-27 06:31:24

+0

也許這在Windows上是正常的PHP? – 2010-03-27 06:37:45

+2

不,這是不正常的。但通常我們會調用一個解釋器來運行一個php文件,比如'c:\ php \ php.exe c:\ temp \ test.php' – 2010-03-27 06:45:37

回答

7

我能想出的唯一辦法來解決,這是要經過我的php.ini文件,並查看是否有怪異。最終我試圖禁用加載的DLL,並解決了這個問題。該DLL的影響性能是php_curl.dll和php_mysql.dll,但我只需要刪除php_curl.dll來解決該問題。

php_mysql.dll自身不會導致任何問題。 php_curl.dll會添加1秒的延遲,如果使用php_mysql.dll,則會延遲4秒。我不記得爲什麼我加了php_curl.dll,所以我想現在就把它拿出來。

+0

它僅在命令行界面上執行過,還是在通過IIS運行時執行過? – feihtthief 2010-11-28 18:35:14

+0

我認爲它也發生在IIS下運行,但我不確定。 – 2010-11-30 07:17:17

+0

我得到了30秒的延遲,這非常令人沮喪。我禁用了php_curl.dll,問題消失了。 – turibe 2015-03-14 23:01:46

相關問題