Mongrel CACHE日志条目,特别是SQL语句的CACHE条目

时间:2010-08-09 23:22:39

标签: ruby-on-rails mongrel

在查看来自Mongrel的日志的过程中,我发现了一些我想要优化的SQL语句。在研究这些内容时,我注意到这些条目有时会在它们前面有CACHE,例如:

CACHE (0.0ms)   SELECT * FROM `customers` WHERE (`customers`.`id` = 35) 

考虑到执行时间,我假设Mongrel真的在缓存这些数据。我的问题是这是如何配置的?我无法在网上找到有关模型数据缓存的信息;我读过的大部分内容都与缓存静态页面或页面片段有关。我没有做任何明确的事情来启用这个缓存,所以我真的只是寻找一个关于它如何配置以及它是如何工作的指针。提前谢谢!

1 个答案:

答案 0 :(得分:1)

实际上与杂种无关。默认情况下,Rails围绕每个控制器操作执行ActiveRecord::Base.cache。这意味着在该操作的范围内,它将缓存查询结果并提供缓存中的结果,而不是再次访问数据库。您应该在日志中(在同一操作中)看到一个相同的查询,该查询不以CACHE作为前缀,CACHE是已存储结果的原始查询。

更多细节here