我如何把@Cacheable注释放在Grails资产管道控制器动作上



我有一个配置了默认':cache:1.1.8'插件的Grails 2.4.4项目。它还使用默认的":asset-pipeline:1.9.9"插件。

运行应用程序时,我在日志中看到以下DEBUG消息:

调试简单。MemoryPageFragmentCachingFilter -没有找到GET:/PROJECTNAME/grails/assets/index的可缓存注释。调度[controller=assets, action=index]

如何让这条信息消失?我不是说过滤日志文件,我的意思是为资产管道控制器放一个可缓存的注释,或者类似的东西。

UPDATE:由于sass-asset pipeline:1.9.0的一个缺陷,我得到了几十个这样的DEBUG日志消息,而不是一个。

我更新到sass-asset-pipeline:1.9.1,因为他们说他们在1.9.1修复了一些缓存问题:https://github.com/bertramdev/sass-grails-asset-pipeline/issues/11

你不会想要的。缓存响应和方法调用应该使用与缓存静态资源非常不同的逻辑。

通常静态资源很少改变,并且永远缓存,但使用唯一的名称或其他机制,所以如果你改变了CSS/JS等。文件,可以让客户端使用新版本。

但是缓存服务方法调用和控制器响应通常要短得多,因为数据库更新经常触发缓存失效和刷新以确保使用正确的数据。

资产管道插件和它的附加插件对智能缓存有很好的支持,你应该在那里管理它,但不要滥用缓存插件

最新更新