花了点时间深入的研究了下rails内部的缓存机制,rails自带缓存机制主要有page cache, action cache和fragment cache,
其中page cache和action cache比较简单容易理解,fragment cache使用比较灵活,SHITou现在使用的就是fragment cache的机制。由于最近实在是太累了,关于fragment cache不多写了现在,先放上几个比较好的文章链接,等有时间了再详细整理出来吧
1.IBM开发者上面的文章,讲的很好的,扩展的也比较多,里面个人比较关注的是timed_fragment_cache这个插件,有时间了试试,1, 2
timed_fragment_cache这个插件,有时间了试试,1, 2
2.RailsEnvy上的2篇连载教程, 讲了上面的三种缓存策略的使用,其中第一篇教程中最后提到了使用page cache时服务器端要设置rewrite的问题,说的非常好. 1, 2
暂时写这么多现在.. 待续,,
看电影了
补充: 在使用片段缓存时如果缓存的对象中有表单或者是rails的link_to_remote ajax等辅助方法时,要注意,因为rails生成的html中都有验证的随机数,所以如果把这些内容缓存的话,会报错ActionController::InvalidAuthenticityToken,
解决办法就是要么对该类内容不缓存,要么就是在控制器application.rb中取消rails的表单及post请求的自动验证功能,不过这样肯定不好的,
2008-08-13 20:45:03, 1261 reviews, comment
send to mailbox
rails中javascript和css调入设置cache为true的问题
少女,不点下广告吗!
all by shitou
blog comments powered by Disqus