如何查找solr服务器是否正在运行

时间:2011-07-19 09:07:00

标签: solr

我正在运行一个从solr服务器获取搜索结果的应用程序。但是当服务器没有运行时,我得不到服务器的响应。有什么办法可以发现我的服务器没有运行,所以我可以给出正确的错误信息

5 个答案:

答案 0 :(得分:9)

您可以定期ping您的服务器(例如http://localhost:8983/solr/admin/ping),如果错误将该消息传递到前端......

答案 1 :(得分:3)

如果您有SolrServer个对象,只需调用SolrServer.ping(),如果无法建立连接,则会抛出异常。

答案 2 :(得分:1)

如果服务器没有及时响应(solr),那么你应该考虑表示它正在关闭并出现错误消息,无论它是否存在(即它需要很长时间因为它超载了)。如果需要永远将其加载到用户:)

大多数solr客户端都有超时和某种错误回调。如果发生超时,则显示错误。

如果你想非常快地知道服务器已关闭,你可以将一个JSP放在solr上,除了打印出一条消息之外什么都不做。然后对JSP执行HTTP GET,如果它没有很快出现,那么服务器就会关闭。

答案 3 :(得分:0)

您应该使用类似Nagios的内容来监控您的硬件状态。 Nagios也有一个很好的plugin for solr可以帮助你。

答案 4 :(得分:0)

似乎应该有一种简单的方法可以通过 HTTP 执行此操作,来自服务器的通用开/关响应将是理想的选择。除此之外,您可以做的一件事就是 GET host:port/solr,如果您收到除 200 以外的任何响应,请假设它已关闭。