在Rails 2中,我試圖優化緩慢加載網頁的性能。Rails 2從一個模型調用到另一個模型很慢
我正在計算模型中語句的執行時間,發現從一個模型到另一個模型的調用中出現了令人驚訝的時間量,儘管看起來根本沒有數據庫訪問。
具體而言,我們說是慢的模式是部門,我計算Department.expenditures。支出法需要知道季度是否已經關閉,且該信息是在一個不同的模型,季度
第一次Department.expenditures調用Quarter.closed?有一個數據庫訪問,我可以接受。但是我已經做了一些事情以便將它保存在模型方法的內存中,以便將來調用Quarter.closed?沒有數據庫訪問權限。 Quarter.closed內的代碼?現在運行大約4微秒,但只需調用Quarter.closed?從內部部門。支出需要400微秒,並與數百個部門,這加起來。
我可以緩存全局變量裏面Quarter.closed值,但似乎有毛。有沒有人知道發生了什麼或有更好的做法的建議?