2012-09-02 23 views
1

在我的生產服務器中,我需要檢查我的應用程序的運行時間(我已經在本地機器上完成了)
但是當我在我的AppController的beforeFilter和afterFilter之間放置microtime()時,小結果,說它$runningTime=0.20秒。
但是,將地址寫入我的瀏覽器並查看輸出頁面的時間比runningTime大100倍。
我需要找出使我的應用程序變慢的泄漏。是否有可能趕上我寫地址到瀏覽器之間的時間差並在瀏覽器上獲取輸出?也許我可以找出原因。
我發現了TIME_START常數,它似乎是microtime()的包裝。在CakePHP中測量應用程序的運行時間

+0

查看瀏覽器中Inspector/Firebug工具的Network/Timing標籤。大部分開銷可能是網絡延遲,而不是PHP腳本本身。 – deceze

+0

是的。我也用pingdom工具檢查它。但是我需要一些能夠自動從我的代碼和日誌到我的服務器的東西。 – trante

+0

您的服務器只能記錄服務器上的執行時間。我說的延遲可能是其他地方,你的服務器無法登錄的地方,因爲它與服務器無關。 – deceze

回答

0

請參見下面的網址

CakePHP 1.3: Measuring Page Execution Time

萬一別人的好奇,我通過添加以下代碼到我的layout.ctp解決了這個。你也可以做到這一點的控制器和把它作爲一個變量,這可能是多一點經典的MVC友好的,但我希望這個網站的每個頁面上,而不在每個控制器

Page rendered in <?php echo round((getMicroTime() - $_SERVER['REQUEST_TIME']) * 1000) ?>ms. 
0

複製代碼0.2秒的運行時間似乎對我來說是好的。如果您的腳本在20秒內運行,請將開始測量的點移到腳本的開始處並查看結果。

或..使用xdebug profiling查看您的cpu週期正在發生的位置。

相關問題