如何使用grails在固定时间间隔后重新索引elasticsearch数据?
我已经在我的grails项目中安装了elasticsearch插件,现在我希望无论何时在生产环境中构建应用程序,elasticsearch数据都应该自动重新编制索引。有办法做到这一点吗 根据标准,当应用程序启动时,您应该能够重新索引如何使用grails在固定时间间隔后重新索引elasticsearch数据?,grails,
elasticsearch,Grails,
elasticsearch,我已经在我的grails项目中安装了elasticsearch插件,现在我希望无论何时在生产环境中构建应用程序,elasticsearch数据都应该自动重新编制索引。有办法做到这一点吗 根据标准,当应用程序启动时,您应该能够重新索引grails app/conf/BootStrap.groovy中的所有内容 例如,类似这样的内容: // grails-app/conf/BootStrap.groovy class BootStrap { def elasticSearchServ
grails app/conf/BootStrap.groovy中的所有内容
例如,类似这样的内容:
// grails-app/conf/BootStrap.groovy
class BootStrap {
def elasticSearchService
def init = { servletContext ->
environments {
production {
// Index all searchable instances
elasticSearchService.index()
}
}
}
def destroy = {
}
}
如果您想设置一个也按计划运行的Quartz作业,那么同样的重新索引概念也适用。但是,我将把它留给您来实现。在grails中使用elasticsearch而不安装elasticsearch插件还有其他方法吗。??这似乎不是一个好主意,因为可搜索的数据将在重新编制索引后显示。这将是一个不同的问题,因为最初的问题是关于使用elasticsearch插件的。然而,由于Grails是一个Spring/Java应用程序,因此没有什么可以阻止您纯粹从Java的角度使用Elasticsearch。所以,不,你不需要插件。