是否可以在Solr架构中的某处存储自定义版本号,以便客户端可以检索它以验证它是否已连接到兼容的Solr实例?
当我将新版本的应用程序部署到QA或生产时,我需要确保我的应用程序所连接的所有数据源(Solr,RDBMS等)都已正确更新/迁移。所以我想在启动时进行一些验证。使用数据库很容易(例如,在VERSION表中存储当前模式版本),但是在哪里存储Solr模式的版本信息不太明显。
答案 0 :(得分:1)
SystemInfoHandler将提供版本以及有关Solr实例的其他信息。在Solr(3.x& 4.x)的更高版本中,这已作为admin requestHandler的一部分启用。
您可以通过与Solr一起分发的示例站点中的http://localhost:8983/solr/admin/system
访问该信息。根据您的Solr配置修改URL。
注意:如果您运行的是旧版本的Solr,可以通过将以下行添加到solrconfig.xml文件来启用它。
<requestHandler name="/admin/system" class="solr.admin.SystemInfoHandler" />
<强>更新强> 对于知道模式何时发生变化的特定情况(例如,模式的版本)可以通过每次修改模式文件时更新根节点的名称属性来完成。然后,此名称值将在SystemInfoHandler响应中可用。