2011-05-06 58 views
2

最近我打算優化我在CakePHP 1.2.0框架和MySql數據庫上編寫的web應用程序。我使用memcache對其進行了優化,並刪除了$ uses數組中的所有模型,並開始使用$ this-> loadModel('SomeModel');在這之後,我的頁面加載tym減少了200%,但我知道還有更多的優化範圍,如果有人能提供一些技巧,建議或建議,我會很感激。 感謝如何優化cakephp和SQL基於web的應用程序?

回答

5

一些提示:

  1. 即成使用Cookie的域獨立於蛋糕靜態內容。

  2. 避免在不需要時啓動會話。

  3. 避免在不使用時加載助手和組件。

  4. 最小化所有JS和CSS,並從一個文件中提供它們。

  5. 儘可能使用緩存(元素,查詢,視圖)。

  6. 請謹慎使用requestAction並始終使用緩存。

  7. 將您的代碼重構爲更小的部分,更小的控制器,更小的視圖。因此,在更多的地方可以對上述內容進行微調。

  8. 檢查你的代碼,並跳過任何可能做一次並重復使用的重複計算/查詢(例如,如果你在視圖中使用本地化的日期格式,格式化一次並重新使用它,而不是應用在時間戳上多次格式化)

  9. 轉儲您的Cake的sql日誌以查看事實上運行的查詢以及它們需要多長時間。優化您的查詢策略(一個大連接vs許多查詢)和數據結構(最佳連接表,只比較索引字段,避免在查詢中使用任何函數或轉換)。刪除所有不必要的字段和關係(例如包含)。

0

使用'recursive' => -1在你找到方法,只要你只需要當前模型數據沒有相關模型。

相關問題