2016-05-12 36 views
5

我有這個問題相當長的時間,但它顯示我的Symfony 2項目的簡單頁面變得越來越慢。本地緩慢執行Symfony項目

這是我的開發環境:

  • Wampserver 2.2 PHP 5.3.13中,MySQL 5.5.24和Apache 2.2.22
  • Symfony的2.7
  • 的Netbeans 8.1

我我真的不確定它來自Symfony,儘管sym​​fony項目更爲明顯(4-5分鐘顯示一個頁面)。

即使從wampserver調用phpmyadmin也很長。

內存,CPU或磁盤沒有問題。使用資源管理器來檢查,一切似乎都很好。

這些是Apache日誌。我有公里:

PHP Fatal error: Maximum execution time of 90 seconds exceeded in C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php on line 5270, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:28 2016] [error] [client 127.0.0.1] PHP Stack trace:, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:28 2016] [error] [client 127.0.0.1] PHP 1. Monolog\\Handler\\AbstractHandler->__destruct() C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php:0, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:30 2016] [error] [client 127.0.0.1] PHP Fatal error: Maximum execution time of 90 seconds exceeded in C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php on line 5270, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:30 2016] [error] [client 127.0.0.1] PHP Stack trace:, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:30 2016] [error] [client 127.0.0.1] PHP 1. Monolog\\Handler\\AbstractHandler->__destruct() C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php:0, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:32 2016] [error] [client 127.0.0.1] PHP Fatal error: Maximum execution time of 90 seconds exceeded in C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php on line 5270, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:32 2016] [error] [client 127.0.0.1] PHP Stack trace:, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:11:32 2016] [error] [client 127.0.0.1] PHP 1. Monolog\\Handler\\AbstractHandler->__destruct() C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php:0, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 
[Thu May 12 14:13:04 2016] [error] [client 127.0.0.1] PHP Fatal error: Maximum execution time of 90 seconds exceeded in C:\\wamp\\www\\MyProject\\app\\cache\\dev\\classes.php on line 5270, referer: http://localhost/MyProject/web/app_dev.php/myURL?init 

沒有任何人有什麼我可以做任何想法......我已經重新安裝了幾個時間我的軟件,但它不會改變任何東西

感謝您的想法和inquieries。

+0

您是否啓用了XDebug? –

+0

absolutly ..使用Netbeans調試 – mlwacosmos

+0

嘗試禁用XDebug(完全)並檢查它是否變得更好。它不應該放慢Symfony的速度,但它值得嘗試。 –

回答

3

基於問題的評論,我們得出了答案,主要原因是XDebug通常對PHP性能有重大影響。

你在你的命令中寫道,Symfony的分析器現在顯示3-6秒,但實際上它需要更多。這意味着,PHP本身可能不是唯一的問題。

我建議您查看瀏覽器的開發工具(Firebug等,取決於您使用的瀏覽器)並檢查網絡選項卡中的時間線。也許它會給你更多的信息在哪裏尋找原因。

對於我的本地計算機,它通常需要PHP執行Symfony約一秒鐘(在開發環境;取決於緩存狀態以及頁面)。

+0

我給xdebug版本提供URL取決於PHP版本https:// x debug.org/files/ – mlwacosmos

2

我做了什麼,以加快開發模式symfony的執行時間,我的本地機器上:

  1. 安裝PHP 7 *,它確實提高了性能。
  2. 啓用Opcache PHP擴展與PHP
  3. 設置realpath_cache_size捆綁4048k
  4. Redis的安裝並啓用學說配置元數據緩存。請記住,每次添加/更改實體文件時,都必須手動清除Redis緩存。這是值得的,因爲它將開機模式下的加載時間增加了大約70-100毫秒。
  5. 執行composer dump-autoload --optimize創建班級地圖。

我已經有大約700-1000ms的加載時間在開發優化前的開發模式,現在是250-350。

當然,您的機器上的數字會有所不同。

+0

對不起,我不能這樣做...我明白你說的,我相信你是對的,但我在一家大公司工作,我我不記得PHP的版本或其他什麼,它是全國性的 – mlwacosmos

+2

但是我會記住你在二十年前說過的當我們是PHP 7 – mlwacosmos