2013-05-02 33 views
6

我一直在努力工作一個新的項目,並已運行到哪裏我的應用程序需要很長時間才能返回無論是在開發和生產線的響應一個奇怪的問題。但有時它會非常快地返回響應。我在這裏閱讀了一些關於可能原因的文章,但沒有一篇能夠解決我的問題。Symfony2中有時慢開發和生產響應時間

起初我還以爲是因爲我有幾個子請求作出所以我刪除這些,但仍然有同樣的問題。

我的平均要求只有20-30MB之間的DEV。我試圖使用探查器來幫助我找出這可能來自哪裏,但是每個請求都顯示請求的最長部分是不同的區域。例如,在一個請求中,最長的部分是控制器,在另一個對同一頁面的請求中,它是模板監聽器,另一個請求是安全/防火牆監聽器。

例如,我的主頁上的快速請求大約需要116ms。我等了一分鐘,刷新了,它需要9467ms,甚至我看到它需要30,000 + ms。

雖然我可以在開發模式有點緩慢生活,督促在做同樣的事情。有時快,有時慢。 APC緩存已啓用。通常我的教義查詢只需要4-20毫秒來完成,具體取決於頁面。

我運行PHP 5.3,但決定升級到5.4,看看是否能幫助,還是同樣的問題。我正在使用nginx的最新穩定版本。 FPM中的PHP。服務器運行其他網站沒有問題 - magento和symfony 1.4 web應用程序都沒有這樣的問題。

Server是一個四雙核與RAM 32GB的,所以我有充足的資源。按照我的請求監視進程我沒有看到異常的CPU或內存負載。

我還沒有嘗試運行在不同的機器上的應用程序 - 但我不明白爲什麼我的所有其他應用程序將是工作的罰款,這一個也是唯一一個遇到速度緩慢的這個樣子。我今晚可能會測試一下,但我想看看以前是否有人遇到過這樣的問題。

下面是我的一些探查快照時請求需要很長的時間:

enter image description here


enter image description here


enter image description here


enter image description here


這裏有兩個當快至預期

enter image description here enter image description here

請求這是我的作曲家。JSON

{ 
    "name": "spliced/commerce", 
    "minimum-stability": "dev", 
    "description": "", 
    "autoload": { 
     "psr-0": { "": "src/" } 
    }, 
    "require": { 
     "php": ">=5.3.3", 
     "symfony/symfony": "2.2.*", 
     "doctrine/orm": "2.4.*", 
     "doctrine/doctrine-bundle": "1.2.*", 
     "twig/extensions": "1.0.*@dev", 
     "symfony/swiftmailer-bundle": "2.2.*", 
     "symfony/monolog-bundle": "2.2.*", 
     "sensio/distribution-bundle": "2.2.*", 
     "sensio/framework-extra-bundle": "2.2.*", 
     "sensio/generator-bundle": "2.2.*", 
     "jms/security-extra-bundle": "1.4.*", 
     "jms/di-extra-bundle": "1.3.*", 
     "symfony/assetic-bundle": "2.1.*", 
     "kriswallsmith/assetic": "1.1.*@dev", 
     "vbardales/multiple-app-kernel-bundle": "dev-master", 
     "avalanche123/imagine-bundle": "v2.1", 
     "knplabs/knp-menu-bundle" : "dev-master", 
     "knplabs/knp-paginator-bundle": "dev-master", 
     "knplabs/knp-components": "*", 
     "symfony-cmf/routing-extra-bundle": "*", 
     "stof/doctrine-extensions-bundle" : "dev-master", 
     "facebook/php-sdk": "3.2.*", 
     "kertz/twitteroauth" : "*", 
     "adoy/oauth2" : "dev-master", 
     "guzzle/guzzle" : "dev-master", 
     "knplabs/knp-snappy-bundle": "dev-master", 
     "symfony-cmf/routing-extra-bundle" : "*", 
     "floriansemm/solr-bundle": "dev-master" 
    }, 
    "require-dev": { 
     "zendframework/zendframework": "dev-master", 
     "elao/web-profiler-extra-bundle" : "dev-master" 
    }, 
    "repositories": { 
     "goutte": { 
      "type": "package", 
      "package": { 
       "name": "fabpot/goutte", 
       "version": "dev-master", 
       "source": { 
        "type": "git", 
        "url": "git://github.com/fabpot/Goutte.git", 
        "reference": "master" 
       }, 
       "autoload": { 
        "psr-0": { 
         "Goutte": "src/" 
        } 
       } 
      } 
     } 
    }, 
    "scripts": { 
     "post-install-cmd": [ 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile" 
     ], 
     "post-update-cmd": [ 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", 
      "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile" 
     ] 
    }, 
    "config": { 
     "bin-dir": "bin" 
    }, 
    "extra": { 
     "symfony-app-dir": "commons", 
     "symfony-web-dir": "web", 
     "branch-alias": { 
      "dev-master": "2.2-dev" 
     } 
    } 
} 
+0

我解決這個問題,我不知道如何。我認爲它最終是一個文件權限問題?我真的不確定。這甚至有可能嗎? – 2013-05-10 16:49:35

+2

回答這裏工作對我來說:http://stackoverflow.com/a/17914570/118593 – TautrimasPajarskas 2013-08-14 09:56:03

+0

這可能會回答這個問題: http://stackoverflow.com/questions/12905404/symfony2-slow-initialization-time#answer -17914570 – 2014-09-27 22:45:19

回答

3

我是指你的答案在另一個(相同的)問題:

Problems with symfony performance

我想你應該在php.ini中設置這些兩個參數上比默認的值要高許多,即

realpath_cache_size = 4096k 
realpath_cache_ttl = 7200 
+1

爲什麼降級? – 2016-12-19 08:29:57

+0

Thx ...解決了我的問題:D – Stony 2017-06-21 16:50:53