在Rails 2中,我试图优化缓慢加载网页的性能。Rails 2从一个模型调用到另一个模型很慢
我正在计算模型中语句的执行时间,发现从一个模型到另一个模型的调用中出现了令人惊讶的时间量,尽管看起来根本没有数据库访问。
具体而言,我们说是慢的模式是部门,我计算Department.expenditures。支出法需要知道季度是否已经关闭,且该信息是在一个不同的模型,季度
第一次Department.expenditures调用Quarter.closed?有一个数据库访问,我可以接受。但是我已经做了一些事情以便将它保存在模型方法的内存中,以便将来调用Quarter.closed?没有数据库访问权限。 Quarter.closed内的代码?现在运行大约4微秒,但只需调用Quarter.closed?从内部部门。支出需要400微秒,并与数百个部门,这加起来。
我可以缓存全局变量里面Quarter.closed值,但似乎有毛。有没有人知道发生了什么或有更好的做法的建议?