【发布时间】:2012-09-07 13:26:22
【问题描述】:
我在我的 Grails 2.1 应用程序中安装了 Quartz 插件。每 5 分钟触发一项计算一些数字的作业。数字显示在每一页的侧边栏上。计算结果会经常变化,我的目标是当用户刷新屏幕时,他们可以在侧边栏看到新结果。 现在我的方法是将ajax调用发送到控制器并从数据库中获取结果并将其呈现在屏幕上。
有没有办法将 JOB 的计算结果存储(缓存)到数据库以外的某个地方,这样我的视图就可以在每次用户单击链接或刷新屏幕时使用它们而无需执行查询?
我考虑过会话,但不确定它是否可能超出正常的网络请求,或者它根本不是一个好的解决方案。有没有解决方案或替代方法? 谢谢
class MonitoringJob {
def calculatorService
def name = 'Monitoring'
def group = 'ApplicationGroup'
static triggers = {
simple name: 'mySimpleTrigger', startDelay: 60000, repeatInterval: 30000
}
def execute() {
def results = calculatorService.runCalculators()
//something like this: session.results =result
}
}
【问题讨论】:
标签: grails quartz-scheduler grails-2.0