gpt4 book ai didi

>0 文件的 solr 健康检查

转载 作者:行者123 更新时间:2023-12-04 23:02:35 32 4
gpt4 key购买 nike

为负载均衡器健康检查提供的/admin/ping 的 solr 默认配置与 Amazon elb 负载均衡器健康检查很好地集成。

然而,由于我们在配置新节点时使用主从复制,因此 solr 会启动并进行复制,但与此同时/admin/ping 在索引从主节点复制过来并且有文档之前返回成功。

我们希望节点只有在完成第一次复制并拥有文档后才能激活。我看不到使用/admin/ping PingRequestHandler 执行此操作的任何方法 - 如果搜索成功,即使结果为零,它也总是返回成功。

在 elb 健康检查配置的响应中,也不会匹配/不匹配预期文本。

有什么想法可以实现吗?

最佳答案

这里要进一步说明问题的本质,PingRequestHandler 将始终返回成功,除非......

  1. 它的查询导致抛出异常。
  2. 配置为使用健康检查文件,但未找到该文件。

因此,我的建议是您将 PingRequestHandler 处理程序配置为使用健康检查文件。然后,您可以在 Solr 系统上使用 cron 作业,其工作是检查文档是否存在并相应地创建(或删除)healthcheck 文件。如果健康检查文件不存在,PingRequestHandler将抛出一个 HTTP 503,这对于 ELB 来说应该足够了。

我会使用的粗略算法...

  • 每分钟,查询http://localhost:8983/solr/select?q=*:*
  • 如果numDocs > 0然后touch /path/to/solr-enabled
  • 其他 rm /path/to/solr-enabled (可选,取决于您的严格程度)

可以配置healthcheck文件in the <admin> block ,您可以使用绝对路径,或相对于您启动 Solr 的目录的文件名。

<admin>
<defaultQuery>solr</defaultQuery>
<pingQuery>q=*:*</pingQuery>
<healthcheck type="file">/path/to/solr-enabled</healthcheck>
</admin>

告诉我结果如何!我很想在 Websolr 为读从机实现类似的东西.

关于>0 文件的 solr 健康检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7243993/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com