有没有grails的方法来缓存带有超时的grails域对象

时间:2019-06-14 13:34:01

标签: caching grails grails3

对于永久不变的表,可以将其添加到域类中:

static mapping = {
    cache true
}

但是,在现实生活中,这几乎是无用的,因为所有表都在变化,即使变化缓慢。例如。我们有一个货币和国家表。我们会根据每个请求阅读它。

我们可以添加或删除货币(例如,如果我们不再支持货币),也可以修改一个国家/地区,但这可能每月或每年发生一次。但是,修改后,将随服务器重新启动新版本HAS。

即缓存必须具有某种超时,因此它可以刷新。

grails 3是否有任何插件或解决方案?

也许是一项每小时开始的工作,还有一些如何使缓存重新读取?

Grails 3.3.8(当前无法选择grails 4)

1 个答案:

答案 0 :(得分:0)

了解有关该应用程序的更多信息可能会影响建议,但是一种简单的方法是使用@Cacheable方法配置服务,该方法返回相关信息(可能最好不要缓存实际实体,而是在实体中缓存​​信息很好)。您可以按照自己喜欢的应用程序中的任意频率或响应事件驱逐/更新缓存。

https://grails-plugins.github.io/grails-cache/3.0.2/index.html